"A real man... oughta be a little stupid."
- Ryuji Goda.

  • View media
RSS My Blogs

eepy


Hello everyone! It's SellFace and I've come back with another blogpost for this month.

2023 was quite rough for me in some parts, and yet, I've also learned a whole lot. I successfully finished and released my third modification, which is Lost and Damned and it turned out to be quite a success compared to my previous mods, like Fremen's Foes, for development of which I had the most passion, or the infamous Modding Bleeds.


And now, SourceWorld(which hopefully will remain as mod title) is my primary passion project and thus an attempt at pushing my sourcemodding limits.

So let's see what I've been doing at the end of 2023.

Huge MapGen improvements. PropSpawning V2. Better Room Shaping.


As usual, let's start with my progress at procedural map generation. And I'll begin with prop spawning.

Previously, the prop spawning in rooms used the old algorithm, which is flawed in many ways, technical and visual ways. Here's few pictures of what the results of it looked like:

test0122test0074


What's noticeable is that props just chaotically spawn everywhere, including the center of the room. That's not really good as walking through all these props is pretty troublesome for the player, let alone NPCs. Another flaw is that in tight spaces, like little hallways that some rooms can get, props may spawn in a way which make them nearly or completely block any passage. Generator just randomly placed props either alongside walls or some random spot.

Another technical issue was that prop generation used actual physical collision checks(TraceHullComplex's) which took plenty of time and almost always caused a considerably long microfreeze when room was generated during gameplay.

I decided to remake the whole prop spawning from scratch, and this time I didn't use any physical checks, but rather just stored info about prop bounding boxes and did my own "collision" checks for if the potential prop's bounding box overlaps with any existing ones, and it's much much faster.

Not only that, but I also overhauled generator's rules of prop spawning. It works by calculating the whole 2d top down area every prop occupies in a tile. Depending on what kind space the prop is gonna spawn in, generator applies different limitations to how much area of a tile can be occupied.

If we take the previously mentioned hallway tiles, the way prop spawning works on those is by calculating the occupied space in single line, depending on direction of props. So only a half of hallway can be occupied before the generator denies any further prop spawning. This condition guarantees that such hallways won't have props that block the way for player or NPC. Example below:

test0157


Props never spawn in the middle of such tiles. Not only that, but the props at walls are made sure to not exceed the center of a tile if you imagine moving them all to one side.

In addition, I added bunch of props to the generator. Besides props, I also added more models for walls and floors, metal and wood materials to be exact.

All in all, you can see the changes I described in the video below:


Another great gameplay addition I've made is the minimap!

As you can see, not only it allows player to navigate around the generated level, it also only shows areas player has been to before. Personally, it makes life much easier and now you can't really get lost so easily.

Another nice change is the new algorithm for shaping rooms. Initially, all rooms start as rectangles of varying sizes. But I want the generator to remove some tiles off these rectangles and replace them with walls to make rooms have varying shapes and not just same rectangles.

(This is a very unperfected old version of the algorithm, all rooms have same chaotic shape, and you can even see the generator left some are inaccessible)

hatDiscord 2xVUWC3BzA


I thought out an algorithm for a level matrix pass that takes every tile and makes a check for whether a tile can be removed without slicing the room(thus making a part of it inaccessible, which is really bad.). My algorithm takes 8 tiles around a tested tile, and passes them all in circular sequence, counting how many "wall arcs" this circle has. If it's 2 and more, then placing a wall in the middle would result in 3x3 tile combination divided in several parts, cutting some area from the rest of room.

fly inverse

Then I added some randomness to it and you can see the resulting room variety below:


Half of the rooms still keep their rectangle shape, while the second half gets various shapes. This makes rooms look less similar to each other and layouts themselves less chaotic.

METAL PIPE! Overhauled Melee Combat. Better Zombie AI.

Now for the fun part. I added a melee system that works similar to what L4D2 has. When player attacks, they fire rays in sequence which resembles the movement of the weapon, allowing for splash damage and just better feel than what vanilla crowbar had.

Besides that. I added stamina(AUX Power) consumption for attacks, and added parrying along with critical hits.

Parrying is triggered by hitting an enemy when they're about to hit you. This will cancel the damage from both sides and slightly push you away from each other. I believe it's great because it gives more control to the player in terms of avoiding damage.

Melee damage is inconsistent and depends on velocity of both the victim and attacker. So running at the enemy and hitting them with a pipe does more damage than doing the same while standing still.

Critical hits usually happen when you time your attacks so well that both your and enemy's speed is great enough for damage to be really big. This results in huge damage that often oneshots zombies, so I added some nice(and memey) effects to that.

I also GREATLY improved the AI for the zombies. Previously they were the absolutely most boring enemy in the game, because they were incredibly slow and easy to kill.

Firstly, zombies can accelerate their walking speed when they chase their target long enough. Secondly, zombies start their attack animation from bigger distance AND they push themselves towards the player and even try predicting player's movement to deny his maneuvers. You can't run circles around them anymore, as they will keep nearly jumping in your way. It's also much easier to get cornered by them, because it's almost impossible to escape them when they surround you. And when that happens while player is out of breath for pipe swings, they're pretty much doomed unless they pull out some powerful enough gun.

To demonstrate this stuff, I have recorded a bit of pipe gameplay:


Dialogue System

lazy


Making voiced dialogues in mods was always a big pain in ass. To have voicelines properly work in game, you have to write soundscripts, open faceposer and generate lipsync data for each soundfile, write closed captions. And doing all choreography in faceposer that keeps crashing as it feels like it's even more ancient than source hammer editor.

So not only I decided to not use voiced dialogues and have textboxes only, I wanted to have a system which would easily allow me to add new dialogues. So I scripted this!


Besides the main script, this dialogue is handled by a simple textfile that is easy to edit.

notepad LB0yb1VXJO

glasses


And I didn't use any .vcd files or choreography. I can easily add new dialogues and call them with a single map input. Besides, I added some formatting to support events like gestures, emitting sounds or extra pauses.

Hub Concepts

Between the travel in randomly generated levels, player will always go back to protagonist's home area, aka Hub, where they're gonna talk to NPCs, take quests, get equipment and other activities.

Currently we planned the plot to take place in a district of a City that once used to be ruled by the Combine, but after humanity defeated it, they started adapting some of their leftover technology.

The_Guardian™ currently works on this hub, making blockouts. Together we work on mod's lore and plot and forming the overall picture of it.


Hopefully, I didn't forget to mention anything else in this blogpost. I will continue the work and come with another blogpost in future, as always.

Thanks for reading, and stay tuned!

book

Start a group Groups
Bronco Development

Bronco Development

2 members Developer & Publisher

Bronco Development is a small group of Modding for the Source Engine category, in our attempts to push past the boundaries and reach new ends within the...

2021 Mod of the Year Awards

2021 Mod of the Year Awards

37 members Event

Back for the 20th time, welcome to the 2021 Mod of the Year Awards. The biggest celebration of modding for developers and players, with the year's finest...

Post comment Comments  (0 - 10 of 13)
deadlyverse
deadlyverse - - 2 comments

Weeb is making bad mods about games that already had their ideas transferred to the GoldSource/Source engine. I've watched some of your videos on Youtube about Source related modding and all I can say is that your mods are as good as Codename Cure at that point and that's not a compliment. Random generation on Source is just pointless and stuff like dialogue boxes from JRPG games is cringy to say the least, "gameplay" of "SourceWorld" also looks like you tried to make your own Max Payne on Source (Half-Payne waves it's hand btw) but the enemies have default HL2 reaction times and you can just shoot them without bullet-time (like you did in your showcase) and it just looks so uninspired and boring. Either go and find some better inspirations for your mods to make them look like they're their own thing and not the same stuff over and over again, or just stop your modding ambitions because they just look like 15-year old was doing this when he just got his hands on modding tools.

Reply Good karma Bad karma-1 votes
SellFace Creator
SellFace - - 108 comments

You went through making an account just to tell me that?

Your attitude sounds like as if either someone hurt you, or you hold some grudge against me. In either case, your points about random generation and "JRPG dialogue boxes" are heavily subjective. Especially about random generation, since even Valve themselves had plans of utilizing it back when they were developing Episode 3/HL3, it makes sense for replayability.
All SourceWorld footage is a development footage, therefore implying that things shown don't reflect the end product, I am well-aware of slow enemy reaction times.
If you want this "new stuff" you talk about, to come from HL2 modders, most of which been making discreet mappacks over the course of years, then you probably don't know much about modding scene to begin with. I'd watch you try and make something unique and of your own within game engine's limitations.

Sorry bud, I can't satisfy everyone's expectations, at least not from those targeting me using GenAlpha-brainrot type phrases like "bro does le bad".

Reply Good karma+2 votes
deadlyverse
deadlyverse - - 2 comments

I never held any grudge to a weeb that popped up in my recommendation feed on Youtube, I felt like I should give my feedback, if you can't accept any critique and you're trying to wash it off on subjectivity and development footage then my bad for you, you can't accept criticism. Making excuses about "mappacks" and uniqueness mixed with "make something yourself" feels like guarding and coping mechanism. You don't need to be a chef to rate a plate, especially when you're eating a plate from a cook that says you're "brainrotted" for some reason.

Reply Good karma Bad karma-1 votes
SellFace Creator
SellFace - - 108 comments

You just admitted to be a consumer with no respect for artistic value by making that “not needing to be a chef to rate a plate” analogy.
Do I make you pay for mods? Do I have to fulfil expectations of some random jerk on the internet, when the whole point of making mods is expressing YOUR ideas without thinking about what’s mainstream?
If you were “criticising” something, then you would’ve done it without making yourself look like an ******* barging into my profile comments. I have no problem accepting actual criticism, I did it many times and been improving my works over the course of years. Your entire “critique” doesn’t make any sense other than few nitpicks and wanting something “original”, yet when SourceWorld has the latter, you shove it off by just calling it pointless.
If you’re a smart guy, then go make a decent mod yourself, otherwise your yapping(that’s what it is) isn’t worth even reading and you’re just here to blow some steam or provoke drama, because you had nothing else better to do.
Starting your critique with an insult is one way for me to tell you to **** off. I won’t be doing any more responses to your yapping unless you backup your big mouth with something other than excuses, which I highly doubt you will.

Reply Good karma+2 votes
The_Guardian™
The_Guardian™ - - 84 comments

That's no feedback by the way, giving feedback means being constructive, and in the first message you were anything but constructive in that case.

First of all you have the attitude to barge in for attention by starting with "Weeb makes bad mods", quite constructive so far, would also like to mention that this "bad mod" this weeb made was also feature by PC Gamer and other several game news websites, if it was that bad, it wouldn't of gotten the attention it did, but I presume opinion is subjective, no?

Calling his work as good as 'Codename Cure' is insulting, yet rewarding, because even that mod actually plays good and is actually fun to play, so I don't get the "That's no compliment", if you have high expectations from modders with high standards, my personal recommendation is to play Call of Duty Modern Warfare 3, given your overall attitude you may enjoy it, I only heard some rumors that it might be good.

Second of all, being 'original' may or not elevate a modder up, but most of us are not here to compete with one another or go in par with AAA Industries, because that's simply absurd, a modder does what likes to do, which is the result of the stuff one brings in Workshop, Mod DB, GameBanana, Lambda Generation and The Whole Half-Life, I'm sorry but if you look for unique projects, Mod DB and all of the listed sites might not be for you, as all projects use a idea or inspiration from somewhere, whenever might be or not subtle, that's the truth, originality is hard to come with, if originality or unique projects still exists at all nowdays, creating something that doesn't exists, whenever that 'something' does not, is hard to find.

My only take is that, whenever you consider it coping or not, if you have creativity or a unique idea, you should do it like Sellface has suggested you to do, see for yourself how easy it is to Map, Code, Sound engineering and Model, might be a lot more easier for you than it is for us, I don't know.

Best regards.
The_Guardian™

Reply Good karma Bad karma+2 votes
Syph0
Syph0 - - 528 comments

Nothing you've said is feedback, you're literally just been a jerk. Jesus

Reply Good karma Bad karma+2 votes
madeinhaven
madeinhaven - - 8 comments

лучший.

Reply Good karma Bad karma+2 votes
Guest
Guest - - 700,058 comments

I want to ask a question regarding Modding Bleeds, how did you make the talking cutscenes?

Reply Good karma Bad karma0 votes
SellFace Creator
SellFace - - 108 comments

Lots of map logic trickery, that’s all I can say

Reply Good karma+2 votes
Guest
Guest - - 700,058 comments

This comment is currently awaiting admin approval, join now to view.

Post a comment
X