Comments

Commented 2 months ago2024-02-29 00:09:02 UTC in wiki page: path_corner Comment #106019
Fun fact: the logic of picking movement waypoints of a func_train is entirely within func_train itself. It is therefore possible to make a valid path with other entities mixed in. I've successfully mixed path_corners with momentary_doors like this:
  1. path_corner (p1)
    • target = m1
    • wait = 0
    • spawnflags = Teleport (2)
  2. momentary_door (m1)
    • target = p2
    • wait = 0
  3. path_corner (p2)
    • target = m2
    • wait = 0
    • spawnflags = Teleport (2)
  4. momentary_door (m2)
    • target = p1
    • wait = 0
I can then use momentary_rot_button to move the momentary_doors around and vary the distance the func_train has to travel.

It is a setup for an experiment where I can vary the time a func_train spends on one part of the map vs the other because it's being used to occlude LOS between me and a monster to test its AI schedule but that's off topic.

But you can likewise use it to have dynamically timed sequence with the mom_doors and func_trains off the playable areas.
My theory is that func_trains check the keyvalues of the entities it uses as paths (usually path_corners) without checking that their classname is actually path_corner. You can therefore use any entity as long as it has keyvalues that concur with that of path_corners: a target, optionally a wait, message (fire on pass) or speed, and spawnflags that don't conflict with that of a path_corner (therefore flag 1 will stop the func_train, flag 2 will teleport, etc.)
Commented 2 months ago2024-02-28 11:07:14 UTC in vault item: 2024 Exercise #6: Combat Comment #106018
Continue mapping!
Commented 2 months ago2024-02-28 11:06:49 UTC in vault item: 2024 Exercise #6: Combat Comment #106017
Your exercises are very well designed:
They look very good!
Commented 2 months ago2024-02-27 22:03:58 UTC in vault item: Point Entity Sprite Pack for GoldSrc v1.1 Comment #106016
@Chimz

Not that I know of. You could propably script it with replace but since they all have different names and also different characteristics (size and so on) it propably isn't worth the hustle.
Commented 2 months ago2024-02-27 20:14:27 UTC in vault item: Point Entity Sprite Pack for GoldSrc v1.1 Comment #106015
Ooh, they do look very clean. Is there an easier way to replace all sprites than the manual one-by-one you described?
Commented 2 months ago2024-02-26 09:31:06 UTC in vault item: GoldSrc Map2Prop Comment #106014
That's really exciting to hear! Looking forward to seeing it! 😁
Commented 2 months ago2024-02-25 22:43:08 UTC in vault item: GoldSrc Map2Prop Comment #106013
Awesome. This is now being used for some of the more complex brushwork in The Core. No complaints so far. You have been added to the credits. :)
Commented 2 months ago2024-02-25 10:42:53 UTC in journal: /bɜːθdeɪ/ Comment #106012
Happy birthday!
Commented 2 months ago2024-02-24 20:13:14 UTC in journal: /bɜːθdeɪ/ Comment #106011
Happy Birthday!
Commented 2 months ago2024-02-24 16:40:58 UTC in journal: Map2Prop supports MAP format now, what's next? Comment #106010
I could just implement an parent_model key, where the value is another func_map2prop that becomes a template so to speak.
Perhaps add a spawnflag "Is submodel" that makes the mesh of this entity become a submodel of the template's model (or the worldspawn model, if no parent_model is set).

I have some ideas for skeletal stuff, but I'm saving that for post-release.
Commented 2 months ago2024-02-24 14:04:39 UTC in journal: Map2Prop supports MAP format now, what's next? Comment #106009
Suggestions (might be a repeat from the vault):
  1. A way to place/reuse the model multiple places in the map. Maybe a point entity that targets the main func_ entity, inheriting the func_'s convert_to.
    • Technically you can do this with MESS that runs after map2prop, but why use 2 tools when 1 tool do job.
    • Using brush entities that inherit others is actually mighty useful actually, to get the right sizing and positioning in the map. Maybe something like zhlt_usemodel approach is more ideal. Maybe do both.
  2. More bones 🦴, a way to assign different parts of meshes to different bones, and a way to set bone hierarchy (easy enough using target keyvalue)
  3. A way to create separate meshes (i.e. separate bodygroup parts) that is later combined into a single model. Probably separate entities that has a shared keyvalue (like MESS). Probably needs a way to set the main entity from the group too (also like MESS).
Commented 2 months ago2024-02-24 00:10:08 UTC in journal: Map2Prop supports MAP format now, what's next? Comment #106008
Thank you! I had already started working on a FGD, currently it looks like this:
@SolidClass = func_map2prop : "Brushes for Map2Prop to turn into a model"
[
    spawnflags(flags) =
    [
        1 : "Disable" : 0
    ]

    outname(string) : "Exported model's name"
    outdir(string) : "Exported model subfolder"
    gamma(string) : "Gamma (default 1.8)" : "1.8"
    smoothing(string) : "Smoothing threshold (0 disables)" : "60.0"
    scale(string) : "Scale" : "1.0"
    rotate(string) : "Rotate" : "0.0"
    convert_to(choices) : "Classname after conversion" : 0 =
    [
        0: "cycler"
        1: "cycler_sprite"
        2: "env_sprite"
        3: "item_generic"
        4: "monster_furniture"
        5: "monster_generic"
    ]
]
So your mock-up was not far off, just missing some of the QC options.
Also instead of an offset key the mapper should just use an ORIGIN brush to set the model origin. It's a practice most mappers should be familiar with already. 🙂

The source code repo is still private, waiting until v1 to open that one.
Commented 2 months ago2024-02-23 20:01:11 UTC in journal: Map2Prop supports MAP format now, what's next? Comment #106007
Thanks for the updates, this tool is very useful.
Have you already opened the repo?

I like that smart idea of using 'contentwater' for mirror faces

What entities (and keyvalues) do you have in mind for the fgd?. I made a small mock-up in case you haven't thought of one yet, maybe this can help:
// Map2Prop FGD

@BaseClass = Map2Prop
[
    m2p_version(string) : "Map2Prop Version": "1"
    m2p_doc(string) : "Map2Prop Documentation" : "https://erty-gamedev.github.io/Docs-Map2Prop/"
]

@SolidClass base(Map2Prop) = entity_name : "Convert brush into a model"
[
    // Model file name
    name(string) : "Model Name"

    // Add the generated model as a point entity
    entity(choices) : "Append model as entity" : 0 =
    [
        0 : "item_generic"
        1 : "cycler_sprite"
        2 : "cycler"
        3 : "env_sprite"
    ]

    // Where generated .mdl is saved
    path(string) : "output model directory"

    offset(choices) : "Adjust model origin" : 0 =
    [
        0 : "no"
        1 : "center bottom"
    ]

    smoothing(string) : "Smooth shading" : "0"


]
Commented 2 months ago2024-02-23 10:56:45 UTC in wiki page: game_text Comment #106006
There should be more information about character sets: what the game supports, how to get the best results on displaying most languages in whatever charset env is necessary (like VNs requiring shift-jis system charset).
Decided to test for myself.

Vanilla Half-Life's text engine seem to be broken for anything that's not ASCII. It consumes single-byte character sets (presumably ANSI/Windows-1252/system locale) but the text rendering is consuming UTF-8. This results in the broken text consistent with the table in this page: https://www.i18nqa.com/debug/utf8-debug.html

Haven't looked at the other SDKs or engines (candidates include Updated/Unified/Featureful/Xash-fwgs/Pathos) on how they handle text. Hopefully better than the unrecoverable mess vanilla is in right now.

ALSO, JACK will purposefully mangle non-ASCII texts. You'd need to edit the .map directly and feed it to the compilers yourself.
Commented 2 months ago2024-02-23 00:41:19 UTC in journal: /bɜːθdeɪ/ Comment #106005
Happy Birthday!
Commented 2 months ago2024-02-22 23:57:18 UTC in journal: /bɜːθdeɪ/ Comment #106004
Happy birthday mate!
Commented 2 months ago2024-02-22 21:06:05 UTC in journal: Simpler Times Comment #106003
WHERE THERE'S SMOKE
Commented 2 months ago2024-02-22 17:40:43 UTC in journal: What is your opinion of melee combat in Op4? Comment #106002
They have the option to flee, and also plenty of ways to avoid confrontation as they figure out how to flee. Also, two to 4 direct hits to the sack gibs the thing and I've loaded them up on armor and health is available.

I guess I won't know if it's too difficult until I get it playtested.
Commented 2 months ago2024-02-22 17:00:53 UTC in journal: What is your opinion of melee combat in Op4? Comment #106001
As long as you make it clear they have to flee from the Gonarch and not engage in combat with it, it should be fine 🙂
Commented 2 months ago2024-02-22 15:40:03 UTC in journal: What is your opinion of melee combat in Op4? Comment #106000
That's all good advice, thank you. Unfortunately I start them out with a gonarch (that they can run from). But I suppose I will not proceed with my plan to put them up against a voltigore shortly afterwards :-/
Commented 2 months ago2024-02-22 15:10:39 UTC in journal: What is your opinion of melee combat in Op4? Comment #105999
If you give the players no other options, they will eventually get used to using only melee.

Just be careful about the difficulty ramp. Warm them up with some headcrabs and breakables first and slowly increase the encounter difficulty instead of dropping the player directly into an arena with several gonomes and bullsquids. Let them become comfortable with it before challenging them, so to speak.

If the enemies have ranged attacks, give the player plenty of cover so they don't end up feeling defenceless (which in turn is experienced as unfair and difficult by the player).
Commented 2 months ago2024-02-21 21:45:54 UTC in journal: 🅱 Comment #105998
Douglas B-23 Dragon
Commented 2 months ago2024-02-21 14:47:54 UTC in journal: 🅱 Comment #105997
Gonna be tricky to crack this riddle.
Commented 2 months ago2024-02-21 09:43:17 UTC in wiki page: monster_turret Comment #105996
why did it send twice
Commented 2 months ago2024-02-21 09:42:22 UTC in wiki page: monster_turret Comment #105995
This says hecu have taken over black mesa, but don't these appear in office complex?
Commented 2 months ago2024-02-21 09:42:20 UTC in wiki page: monster_turret Comment #105994
This says hecu have taken over black mesa, but don't these appear in office complex?
Commented 2 months ago2024-02-20 13:55:04 UTC in wiki page: Tutorial: The Complete Guide to Lighting Comment #105993
Back from AFK, got HL and JACK back and working again.

I tested light_surface and it works exactly as I expected, proving the description is indeed incorrect. I will pass my test map to you for you to incorporate into this page. (tip: gl_wireframe 1 would be useful when taking screenshots for this map)
Edit 2024-03-17
No correction on the above has been made yet. As of now the information on light_surface page is updated and correct, yet this page is still repeating the outdated and incorrect information.
Commented 2 months ago2024-02-18 21:37:24 UTC in vault item: cross_stalk_tribute Comment #105992
Ok lets try It!
Commented 2 months ago2024-02-18 21:02:42 UTC in vault item: Half-Life: Branches Comment #105991
I'm working on this map..thank you..you inspired me
Commented 2 months ago2024-02-18 16:53:35 UTC in journal: 🅱 Comment #105990
Bainisweaknessleavingthebody
Commented 2 months ago2024-02-18 16:38:11 UTC in journal: 🅱 Comment #105989
B
Commented 2 months ago2024-02-17 21:49:10 UTC in wiki page: Tutorial: The Complete Guide to Lighting Comment #105988
LOL choose your fighter: "mamamamamamajakldjfkjksdjflksjdfmama" or "mnmqnmnnqmnmnqnmn" im sorry xD
Commented 2 months ago2024-02-16 23:19:08 UTC in vault item: A WAD of 897 Solid Colors Comment #105987
Holy shit I was trying to do the same thing for a project! You just did it for me!
Commented 2 months ago2024-02-16 18:04:37 UTC in vault item: A WAD of 897 Solid Colors Comment #105986
And just like that, epilepsy warnings across TWHL will increase 500%
Commented 2 months ago2024-02-16 12:54:53 UTC in wiki page: Tutorial: The Complete Guide to Lighting Comment #105985
Can you test the difference between light_surface's Filter max range [_frange] and Filter max dist to plane [_fdist]? I know what the words mean, but the description seem to contradict my understanding of the meaning of planes and how they work.

I have a few test case ideas:
  1. A wall of tiling 16x16 brushes textured with a texlight.
    • _frange should make only a disk of those brushes around the light_surface emit light.
    • _fdist, if my interpretation of plane is correct, should light up all of them since the normal distance of all the faces to the plane is identical even if they're infinitely far away. That's the nature of planes.
  2. Similar setup to the above but the next row above recedes 16u behind the previous row, producing a staircase. Place light_surface in the middle of this flight of stairs.
    • _frange should produce a sphere of lit up faces.
    • _fdist, if my interpretation of plane is correct, should have all faces on the same row light up until a certain distance away from the entity because again, all of them should have same normal distance to the plane.
Unfortunately I can't do these tests myself right now as my drive did a resonance cascade and I'll be afk for a couple of days.
Commented 2 months ago2024-02-16 10:03:36 UTC in vault item: A WAD of 897 Solid Colors Comment #105984
I thought about doing something like that, but I personally prefer searching for colors with intelligible names, rather than sorting through a list of hex values
Commented 2 months ago2024-02-16 08:28:49 UTC in vault item: A WAD of 897 Solid Colors Comment #105983
You could probably fit all 1100 colours if you use just the hex values for names e.g. COLOR<RRGGBB>. Has the unintended side effect of the alphabetical sort being quite logical too as it sorts by hex values.

...maybe I should attempt this myself.
Commented 2 months ago2024-02-15 14:37:55 UTC in wiki page: monster_human_grunt Comment #105982
^ Spawn one with a shotgun. HECU shotgunners always wear balaclavas.
Commented 2 months ago2024-02-15 12:54:36 UTC in vault item: A WAD of 897 Solid Colors Comment #105981
I totally want to see a mapping competition where you can only use this WAD!
Commented 2 months ago2024-02-15 08:53:20 UTC in vault item: Unfinished Project for Opposing Force Comment #105980
Even if unfinished, it's a pretty map
Commented 2 months ago2024-02-15 08:06:58 UTC in vault item: A WAD of 897 Solid Colors Comment #105979
Cool! A disco floor!
Commented 2 months ago2024-02-15 02:45:43 UTC in vault item: MyHouse.BSP Comment #105978
Yup sure did I use your textures for all my mods thanks for the WAD :]
Commented 2 months ago2024-02-12 09:56:20 UTC in journal: Back Being an MD Comment #105977
You can at least rest assured that you tried. There's always the possibility to play simulators with VR in your spare time, so you can still have this hobby in a safe manner.

Good luck with your new medical practice!
Commented 2 months ago2024-02-12 09:48:24 UTC in vault item: Core Critical [rc3] Comment #105976
Amazing work, congratulations :)
This comment was made on an article that has been deleted.
This comment was made on an article that has been deleted.
Commented 2 months ago2024-02-11 22:10:22 UTC in vault item: 2024 Exercise #3: Brewery Comment #105973
Thank you!
Commented 2 months ago2024-02-11 21:19:19 UTC in vault item: 2024 Exercise #3: Brewery Comment #105972
It's a small and nice map! The only downside, like you said in the description, is the bad lighting.
But a good work overral!
Continue mapping!
Commented 2 months ago2024-02-10 12:18:26 UTC in vault item: Area47 Comment #105971
this is one of the maps ever made
Commented 2 months ago2024-02-09 20:57:32 UTC in vault item: CoolDown Comment #105970
9.8/10
Architecture — 10
Texturing — 10
Ambience — 10
Lighting — 10
Gameplay — 9

Quite a great map right here, with so much detail crammed in it, that sometimes it feels surreal it was done during the compo. A lot of interesting placements, layouts, fun traps and secrets.
The sole cons I have, that stops this from being full perfect, is that it's quite a big map, so if the server isn't at least half full, you will have some trouble finding some players.
In my opinion, the coolant instantly killing you ( or hurting you very fast on the small puddles / waterfalls ), kinda makes it at times a punishing element if you miss a jump / get pushed, but its minor in my view.