DEVELOPMENT BLOG
RECENT TWEETS
Tweets From OpenFortressPatch 21, Hotfix
OF Team | July 21, 2024
Heya everyone!
This is a bit of a smaller one, we originally intended to make an update 1 week after the last to do some final polishing on the jetpack's visuals, however, there were some issues that arose so we had to postpone it untill now.
On the good side though, this let us add a bunch of little goodies in the meantime, we hope you enjoy!
We decided to give some insight on our thought process behind some of the changes this time around.
[Balance]
[Powerups]
"Due to the jetpack powerup frequently being dropped high in the air, we took another look at how powerups behave when dropped, and decided to make them all float down after a while."
- Dropped powerups now float downwards after a short period
- Dropped powerups are now dropped slightly spread out if you have multiple
[Weapons]
"While we're personally quite happy with how the Railgun functions and plays, we have noticed many players having trouble fighting it.
The statistics don't indicate that it's overperforming it's use case, however it still seems to be frustrating to fight against.
One big reason it might feel annoying to deal with is the fact that you sometimes can't notice that someone's even attempting to shoot you, so we're trying out giving it more feedback pre and post shot so you always know when you're in danger."
- Railgun
- Added noticable draw and hum sound that is audible in third person
- Added dynamic lighting to the coil
"Internally, we've also been taking a look at the Chaingun and Lightning gun, in particular, their ammo economy, we're happy with how it's going but it needs a slight tuning before we feel comfortable releasing it."
"Lastly, the long awaited Flamethrower rework has started development, not far enough along to be playtested yet however."
Cosmetics
- Added a Familiar Face
"Back in the day we'd say this looked top of the line, nowadays we call it a Classic"
Maps
- Cleaned up mapcycle and our maplist
- Adding missing maps to the mapcycle
- Removing some abandoned or accidental maps
[New/Reworked Maps]
- duel_badplace_dev_pigeon
[Updated Maps]
- dm/mdom_angeles_dev
Left is the new version, right is the old
- dm_marine_dev
- dm_fotia_dev
Left is the new version, right is the old
- dm/mdom_radiowave_dev
- dm_lumberyard
- dm_mannworks
Left is the new version, right is the old
- dm_painhouse
[Removed Maps]
- dm_bailey_dev
- dm_forgecall_dev
- dm_hungry
"Bailey and Hungry are likely not coming back, Forgecall was commited by accident and it was never in the mapcycle."
[Audio Visual]
[Powerups]
Added new pickup model for the jetpack powerup
Added unique pickup sound for the jetpack
Updated deploy and fly sounds for the jetpack
Updated jetpack particles to use a unique particle entries:
- Jetpack_thrust, jetpack_exhaust and jetpack_overheat
- Visually they're still the same for now
Updated Shield powerup player model to be more visible
"Further updates to the visibility of the shield powerup are coming at a later update"
[Mapping]
Added Shooting range sign textures:
- sign_blastjumping
- sign_bunnyhopping
- sign_shootingrange
- sign_surfingandtrimping
Pine tree models by stuffy360
- prop_forest/tree_tallpine01a-f
[System]
- Added spanish localisation
"While we're glad that server owners continue to improve their servers and the play experience with custom plugins,
if pretty much every server feels like it needs to run a plugin that replaces a function that exists in the game, that is a massive failing on our part.
One such function is voting for the next map.
We have a system in place to call a vote for the next map when a round is nearing it's end, however it's been quite buggy,
often times it doesn't call a vote when it should, and even moreso calls a vote before it should.
And even if it does call the vote correctly, the maps it displays are lackluster, to say the least.
The way the system worked was keep track of the playtime of each map, rank them accordingly, pick the 5 leased played maps and put them in the vote.
The problem with this was that, once you pick one of the maps, the other 4 leased played maps will stay the leased played maps, so the same ones will be suggested again.
What this means is, you'll pretty much always get the same few choices over and over again, which definitely felt boring and restrictive.
For these reasons, server hosts preffer using the 'nativevotes' plugin on their server, which offers other benefits such as rock the vote and map nomination.
To address these issues of our core system, we reworked how the map picking algorythm works and cleaned up the code that triggers nextmap voting to be more consistent.
Last update we already did add a 'rock the vote' option, though we're still thinking about how best to encourage the usage of the vote menu.
Some ideas were talked about like having chat macros work off the gate, adding a search function to longer lists like the maplist, adding a bind to open it or simply making it more obvious in the pause menu."
Updated nextmap vote
- Now uses discrete distribution based on maptime
- In short, this means that it picks the maps randomly, but it's biased towards maps that haven't been played much on the server
Cleaned up the way automtic nextmap voting works
- Now properly respects mp_maxrounds and
mp_maxrounds_ffa
- No longer accidentally starts during waiting for players and at the start of the round
- When using
mp_timelimit
, the game used to forcibly end if the time left was less than 5 minutes and a round ended in order to not start a round that will likely not end in time- This time has been lowered to 2 minutes and can now be adjusted using
mp_timelimit_cutoff
- This time has been lowered to 2 minutes and can now be adjusted using
- Now properly respects mp_maxrounds and
"Another big issue with community servers we've noticed is the very frequent usage of mp_weaponstay and of_spawners_resupply.
Weapon and ammo economy is something we've been messing around with since Deathmatch was first started, managing it is a big part of how we want OF to play.
Unfortunately though, our smaller playerbase usually necessitates that play sessions converge into a single server, meaning those servers need to contain more players than intended.
More players means some of those players wont be able to find a free weapon to take, leading to a less than ideal play experience, so, easiest fix for most seemed to simply disable weapon respawns.
Disabling respawns is usually acompanied by enabling of_spawners_resupply, which lets you get ammo from weapon spawners, usually they'd go on cooldown once they give you ammo, but with cooldowns disabled, you essentially get full ammo for whichever weapon you picked up instantly.
A few updates ago we tried solving this issue by introducing dynamic weaponstay, which hastens weapon respawn times the more players are on a server, however, it seems that server owners have ignored this command.
Once again that is our fault, we didn't properly communicate this change, and furthermore, it's disabled by default, with no frame of reference to what values would work.
We playtested and adjusted this value on our internal servers and we decided to enable this command by default with a value that should suit most needs.
We encourage you to try and use these settings on your servers for a bit.
The commands are prefixed with of_spawners_dynamic_"
Updated the default value of
of_spawners_dynamic_max_mult
to be 0.2Updated the default value of
of_spawners_dynamic_player_start_count
to be 6Fixed dynamic weaponstay continuing to increase rapidly after the max cutoff was reached
Updated jetpack and powerup convars to show notifications when changed
Fixed some jetpack convars being marked as cheats
Fixed superweapons not always dropping on death
Fixed quadlauncher dropping before the last rockets stop homing
Fixed TDM not enabling Merc only
Fixed stuttering on local servers when walking, related to the jetpack
Fixed hint hud not always working as its supposed to ( for example when using Sourcemod )
Fixed certain convar autocompletion functions reading memory they're not supposed to
Fixed bots spamming softzoom cvar errors in the console when developer mode is enabled
Fixed crash related to projectiles despawning during map change
Fixed crash related to entities being removed when changing maps
Fixed crash related to weapon statistic tracking
Fixed crash related to headshots
Fixed crash related to lightning gun sounds
Fixed crash related to weapon and animation particles
Cleaned up many unneeded dx80 and sw files
Fixed and cleaned up several textures with incorrect parameters and broken strings
Fixed an error in the predifined cosmetic vmts that gave certain cosmetics incorrect lighting
Playtest Wave TRIPLE!
OF Team | July 17, 2024
YOU STILL WANNA PLAYTEST WITH US???
Tired of d... HELLO AGAIN! We are once again searching for fresh meat to playtest our silly little creation! As we've said before, previously submitted applications may be looked at again for this wave, so if you've already applied but want to change something about your application, go right on ahead and do that!
Interested? Quit reading and get applying!!!
Playtest wave 2: Electric Boogaloo
OF Team | February 24, 2024
YOU STILL WANNA PLAYTEST WITH US??
Tired of dull sawblades, unexpected... wait, I think we said that last time. Our first wave of playtesters have been very helpful with ironing out bugs and testing out our upcoming features, they've been so diligent in fact that we've decided to go ahead and start another wave! So if you missed out on the first wave, now's your chance to try!
If you've sent us an application before but weren't accepted, now's the time to go back and re-read your responses, perhaps remove that paragraph about "Destroying the dev team and rebuilding it in my image" and clean up your writing.
Certain applications were put in the backlog already and were just waiting for a better time, which could be now!
So what are you standin around for, take that pen an quil and get writing!
Happy birthday to us all!
OF Team | February 14, 2024
Judging by the loud explosion sounds, wet thuds, and the orchestra of crickets on my front porch, it seems that one more year has passed for Open Fortress, not just one in fact, this time, it's FIVE!
For some, everything they could ever wish for, for others, no time at all, but we are OPEN FORTRESS, and this is a cause for celebration!
There is much to say, and to help, I'll consult my trustworthy advisor and Co-General. Let's hear what he has to say:
"Wait, what? Its been five years? IT HAS NOT BEEN FIVE YEARS ALREADY!!
I'm over here fending off polar bears from invading my home in the alaskan wilderness, and you guys are expecting a big anniversary post! Well, guess I better fax you guys this latest info for the occasion! (And hope one of these bears doesn't gnaw my arm off)"
While we wait for the wonders of technology to do their thing, why don't we look at less sentimental tearjerkers and rather at the future!
Indeed, the last couple of months have been quite eventful behind the scenes.
Open Fortress, in its core, is a collection of games and gamemodes with Team Fortress at its heart, so it's been quite saddening to see many of its modes and features forgotten and unplayed, which is why we've been cooking up a new way for the game to flow, which would not only let players experience more that the game has to offer, but also future-proof it for any new games and gamemodes added, for example: Retromode!
Now, not to get your hopes up too much, we're still not actively developing Retromode, our main focus is polishing up and finishing Deathmatch, but this is a big step towards a more varied experience.
Instead of the old and dusty map votes at the end of the game and tucked away vote menus to change the mutator, we now have a brand-new end of round voting screen that includes gamemodes, maps and mutators, all of which are now more customizable than ever, both on our end as well as the server's end.
The commonly used plugin "Rock the vote" now also has an in-game equivalent in the call-vote menu.
From having every single option as a possible vote, to only hosting a single map and gamemode, the system is as customizable as it gets, and we hope to see both regular players, as well as creative server hosts, to make full use of the system.
Of course, we're also working hard to allow old geezers to host servers without this new system so as not to break compatibility with tried-and-true plugins and methods.
The system, mechanics-wise, is mostly done; the only thing left is coding the UI for it, which will come with a few new VGUI updates as well.
The system is quite big, and we want to make sure everything works correctly, as it encompasses the entire game.
Many other changes and updates have been made during its development, and we might want to push those out before it's done, so we can't guarantee the vote system will be in the next update, but it definitely will come soon!
As for actual gameplay changes, you might've caught some teasers of a certain new powerup, the Jetpack!
Look Up! Look Down! Look Out! Mercenary does it everywhere!
The jetpack lets the user soar through the air at will and keep or increase their momentum, and don't worry about your jetpack running out mid-flight, modern medicine has made fall damage a thing of the past.
And before you ask, yes, a certain egg-laying Tachyglossidae is already back on his mission to collect gemstones or something like that, as our modeler James Retro has been hard at work to make this beautiful contraption a reality.
Now that's classy!
Many of our mappers have also been hard at work and wanted to share their progress:
Take a look at this in Dev bloodrun re-artpass by Pigeon!
And something that's been long in the making ( and is still in the making... ), a tutorial map! It's still quite a ways off, but we're making slow but sure progress on it.
A change in scenery is always nice to spice up the day.
Now, let's see how our fax machine is doing.
Ah, here it is.
Five years? It doesn't feel real, yet as I stare at this single gray hair on my head, the reality is beginning to set in that I'm almost thirty. Through working on this project, I've made some amazing friends and had the privilege to work alongside some very talented people, and despite the hardships we sometimes face, it's the wonderful community we've amassed that makes everything worth it. You all are what keep this whole thing going, what keeps me motivated to continue being part of this, and, of course, continuing to perform the part as your favorite masked man. To all of you, in the community and on my dev team both past and present, from the bottom of my heart, thank you all. - Stachekip
Five years... That's over half of Team Fortress 2's development time now, crazy to think about. One day you're opening Visual Studio to figure out what an "Int pointer" is, and next thing you know, you have blood on your hands, a goat horn stuck in your head, and a pentagram beneath you; and also a Project with hundreds of contributors and thousands of fans. The first year was so exciting. I had just turned 16, learning about the engine, figuring out how to make the bare necessities work, then people started joining, and wanting to contribute, and quickly things started developing, the first maps, the first actual playable build, I remember the multi-weapon system genuinely being an accident at first, giving a dozen weapons in each of the first 3 slots.
The Mercenary actually got a model! And his voice actor, now a good friend of mine, also decided to lend his hand and approval.
New UI, the Loadout system, more modes... As the second year dawned, the first big boom happened, and we had so much trouble hosting the downloads due to our non-existent funds.
Hosting is definitely something that is still plaguing us to this day...
Development on Retromode started, but quickly faded, more polish for DM, internal struggles with keeping the mod afloat and the team running, to the point where I left for a bit...
Third year's hazy for me due to my absence, but I know the team bounced back and got into the structure it is today, for the better I feel.
Next Year was the big shut-down, which halted development to a crawl, and finally we're back, trying as best as we can to continue what we started.
I am so thankful for everyone, especially the team, be it people who stuck around till current day, be it the ones that have moved on, and especially the ones who perished on the climb. - Kay
YOU WANNA PLAYTEST WITH US??
OF Team | December 25, 2023
Tired of dull sawblades, unexpected "BONK!"s, and assault rifles bursting into flames?
Well, we are too! Open Fortress has been in open alpha since its inception, and public testing helps out a lot in discovering bugs. However, since making a public version takes quite a bit longer than making a development version, internal testing has been a major part of our workflow, and unfortunately recent changes have left us unable to accept new internal playtesters for a long while... UNTIL NOW!
That's right, we are re-opening playtester applications, and with a brand new server to boot! If you've been on the nice list this year and have been very active in our Discord, you may have a higher chance of getting accepted. In particular, we're interested in server operators for the next update, as it introduces changes in how they flow.
Well, what're you waiting for, Christmas? Unless you've been on the.. what's the opposite of nice? Not nice? Unless you've been on the not nice list this year, then check out the form below to apply!
beans.
intcoms | July 30, 2023
...You're probably thinking, "another downloading tool? this is what, the 4th one?!"
Well it's not without reason. This tool is a stopgap, if you will, between the remnants of our previous two solutions and our next one.
We wanted something that'd help all our current users to update, so with some assistance from our friends over at TF2c, we've been able to put together a temporary solution that should help you update smoothly, regardless of what revision you're currently on. This will also smooth the transition to our new solution which hasn't been completed yet.
Now the reason why that next solution isn't done is due to our commitment to making sure it works perfectly, and due to the scope of the project.
This won't just be for Open Fortress. This'll be for several sourcemods, fixing the downloading solution once and for all. It might be a moonshot but we're aiming for the stars here. Stay tuned for that, but in the mean time, enjoy the new update!
Q: What happened to OFToast II?
A: Unfortunately, OFToast II has been cancelled due to several reasons, mainly stability, efficiency, and the existence of better solutions. Its true replacement however is better, and will be coming soon, hopefully.
Q: What's this new one then?
A: If you're familiar with TF2C's installer then this may look familiar - it's based off of that.
Q: Where's the source code?
A: Here!
Q: Why is it called beans?
A: I'll leave that for you to figure out.
Happy fragging,
-intcoms
We Want You! (To Join Our Team)
OF Team | April 16, 2023
Listen! Can you hear that in the distance? The sound of marching, the sound of a hundred pairs of boots in formation, the sound of a certain gravel-voiced drill instructor barking commands? That’s the sound of us coming to get you, because we want you - not to court martial you for war crimes (although we’re collecting some compelling evidence on that front), but to recruit you. That’s right: applications to join the Open Fortress development team are now open!
You can apply to contribute to any part of the development process, from the creative to the technical, from the gameplay-related to the promotional - although at the moment we’re particularly interested in recruiting new programmers, 3D modellers and music composers. But no matter your speciality, if you feel you’ve got what it takes, get your butt to the application form and get typing. Who knows - soon enough you too could be a valued and vital member of the team, helping to bring Open Fortress out of the basic training that is alpha and into the flying colors of beta, full release, and beyond!
Right now, we are especially eager to scout out for new programmers to help bring our game together swiftly and successfully. So if you know how to separate lines of code from the frontlines in the trenches, then get those boots of yours on and start marching!
Note: if we don’t reach out to you immediately, that doesn’t necessarily mean that your application has been rejected. Evaluating everybody’s applications might take a while, so sit tight and we’ll get back to you in due course!