SourceBox is going great!
Hello everyone, Relt writing. SourceBox is already on build 6 (Which you can download from our discord) and we are releasing new builds once per ~2 days. I'm sure you are asking yourself
What's new?
Quite a lot actually! Me and Celisej have been working hard on improving the game by adding new features and splatting nasty bugs. Major changes include:
HL1:S entities
While not in the best state, most of them already work.
Revamped command system
If you are tired of spamming the alias
command, tire not, my friend! Because now you will be spamming []
instead! You can now use convars and outputs of other commands as parameters in commands. The change is very simple to understand but brings with it a TON of intrinsic properties.
Here is an example:
Suppose you want to make a selection menu system, normally you would use aliases that redefine other aliases like this:
//define the menu options
alias menu_1 "echo first option"
alias menu_2 "echo second option"
alias menu_3 "echo third option"
//define the behaviors on each of the options
alias menu_1_next "alias menu_next menu_2_next; alias menu_prev menu_2_prev; alias menu_select menu_2"
alias menu_2_next "alias menu_next menu_3_next; alias menu_prev menu_3_prev; alias menu_select menu_3"
alias menu_3_next "alias menu_next menu_1_next; alias menu_prev menu_1_prev; alias menu_select menu_1"
alias menu_1_prev "alias menu_next menu_3_next; alias menu_prev menu_3_prev; alias menu_select menu_3"
alias menu_2_prev "alias menu_next menu_1_next; alias menu_prev menu_1_prev; alias menu_select menu_1"
alias menu_3_prev "alias menu_next menu_2_next; alias menu_prev menu_2_prev; alias menu_select menu_2"
//initialize the menu to the first option
menu_3_next
//
// Now you would use menu_next, menu_prev and menu_select to browse through the menu
// Note that this example doesnt have any display method of what you selected
//
For the any human being, writing normal cfgs is very tedious. Having to manually define every behavior for every position of the menu is just stupid!
I had an idea to use convars as variables and parameters, it's literally in the name "CONsole VARiable". The new syntax is very simple to understand. Simply put a convar name in square brackets to make the convar's value take the brackets place.
>echo sv_cheats is: [sv_cheats]
sv_cheats is: 1
Notice how i said "make the convar's value take the brackets place" and not "make the convar's value be used as a parameter". Do you see the difference? I can't even begin to describe how huge this is. Just see for yourself what you can do!
alias menu_1 "echo first option"
alias menu_2 "echo second option"
alias menu_3 "echo third option"
setinfo menu_selected 1
// built in source engine command that creates a new convar
alias menu_select "menu_[menu_selected]"
// will execute menu_1, menu_2, or menu_3 depending on the menu_selected value
alias menu_next "incrementvar menu_selected 1 3 1"
alias menu_prev "incrementvar menu_selected 1 3 -1"
Look how much shorter this now is! You can concatenate convars with strings and use the result as a command to execute! Convars can hold strings too, and im sure you already got plenty of ideas of what you could do with this.
I didn't stop there. I also allow the output of other commands to be used in brackets. I've added math and string commands which you can use in brackets or by themselves!. And of course, you can also nest brackets and it works exactly how you would expect. We have tons of ideas of what to add so it's not like this is the end of the command expansion
Toolset beginnings
Build 3 added the config editor and model browser. The config editor allows you to create and execute configs while in game, while the model browser lets you search for models and spawn them in the world.
While still WIP, they do their job well.
Other planned tools are:
- Entity creator
- Map editor
- File browser
- Material editor
- Model editor
- Particle editor
This isn't a complete list of course, because who knows what might come in the future?
Screenshots
Get out your oohs and aahs as it's screenshot time!
How do i get this mod?
It's simple! Just join our discord server and go to the #sourcebox-releases forum channel.
How can i help out?
In many ways! Make maps, models, materials, or make pull requests on our github. Any improvement to the game is appreciated.
Thank you!
If it wasn't for the community SourceBox would have never lifted off. But now that it's in the air, we can expand it and make the ULTIMATE Source Engine sandbox.
- relt
le epic