Forums

Everything posted by Electro

We've had a lot of great feedback and extensive testing over the past previous months. We'd like to extend thanks to Rama and crew (sorry if you're in the crew and not named specifically, we have no way of knowing everyone involved, but we appreciate you just the same! Even just for playtesting (update!: here's the list of everyone!! https://reflex.fun/special_thanks.txt <3) for his work with his ruleset and hosting custom servers to make that all happen. The progression and documentation through all the iterations as well as theory behind all the changes are really what made it a comprehensive write-up. This is the result of months upon months of testing across a variety of skill levels. For the full write-up please see: https://reflex.fun/ruleset
This is the gameplay changes moving forward and will obviously be part of 1.2, but we're providing this portion early so it can be used in competitions people are running.
We loved being able to provide everyone in the community with the experimental plus ruleset, which internally we called more of a "sandpit" to let people play in. This was explicitly stated to be an exclusive testing and development circle in order to reduce noise and dilution among the community. Somebody has taken a massive shit in the sandpit and as a result it has now been removed.
Reflex monthly cup melees have also been added and awarded to the winners. Congratulations to everyone involved with this cup, both the players and organisers/admins!

Officially confirmed for next update. Everything from my end is done with implementation of it.
Just want to say, this is how custom rulesets should be handled. Everything about the process was done right. Documentation, discussions, changelogs and explanations.
Thanks to everyone that provided feedback and to Rama for coordinating it all.
I believe it addresses a lot of consistency issues while providing more solidified roles for weapons. By providing this contrast it makes the gameplay less flat/uniform overall. I think it'll give an improved platform moving forward. Another added bonus is that for the most part, the more casual players won't notice any drastic changes. A good step towards evolving the gameplay I think.
Thanks again everyone.

I'm working hard. I'm not going to promise features or hype anything, because what ends up being in the next build might change. When (or "wen" as people like to keep poking/hounding with) isn't known at this stage too, might be a few weeks away still.
I'm more so interested on refinement than inflating/polluting the game with more features. In an ideal world large games would happen and mysteriously have people appear out of nowhere to form endless queues of large matches, but it just doesn't happen. For example, we put a lot of time into doing CTF (a lot more than just flags...), the tech for larger maps was pretty huge, team visibility/customisation of all the colours and having those go into the maps also, sounds, events, hud/lua... there's quite a bit to it.
Regarding the abusive people saying they paid for X, game is ded devs are ded and pickering about trivial trash. You paid $10 or less and typically have hundreds of hours in-game. I'd like to know how many other games you pay for that have given as many hours and costed more. Get a reality check. Sit down.
Think about how much money is pumped into marketing for other titles from big studios and what their player numbers are at or typically hours played. Millions of dollars pumped into marketing alone which far exceeds any actual revenue for the entire project, but people still like to draw comparisons... yep, well done.
A lot of people like to think they have the secret magical answer to wave their wand and it's everything anyone ever could have possibly imagined, but the reality just isn't that.
I know people will probably slam me, but they slam me anyway regardless. Bust our asses on a huge update monthly... slammed, what about X or Y? wen.
Hype anything, get poked wen constantly, release, slammed... what about X or Y, do the devs even care. wen is X coming.
Don't say anything, try focus on working. Slammed. Say something. Slammed.
Stop with the negativity.
Enjoy something, the amount of content is insane. The updates have for a long time have been huge and frequent. The update is yes taking a bit longer this time, no need to get out the pitch forks and abuse.

Hello humans! (and other species so we don't offend)
We've put together a bunch of hotfixes for you. There's more under the hood that accompanies these as usual, but you get the idea..
Code
Carnage pickup sound is heard again (now clamped to 4 seconds -- ours is 3.7)
cl_playercolorX is now blocked when not in menu
cl_player<inventory> cvars are now blocked when not in menu
Player name now flood protected
Drop in support now preserves existing player states in arena games
Fixed issue where in arena1v1, game would end if a playing player left (while there were queued people that could come in next round)
UI/Widgets
Added: MapAutoSave widget! Intervals and backup counts configurable in options
Replay editor: now properly stays visible in edit mode
Replay editor: can no-longer select spectators in replays
Accelmeter: added race mode/training mode only options
Proving grounds now includes on/off/both options (so now you can queue for both proving grounds and standard map pools)

Hi person(s),
Wen is now.
Here's your log of changed things.
Art
Effect optimisation: burst impact, increased spark gravity, reduced number of sparks by 20%, better spark orientations, reduced spark length, increased spark width
Effect optimisation: rocket explosion, redcued number of sparks by 33%, reduced spark lengths, better spark orientations
Effect optimisation: blood particles duration now 1.5 seconds (was 2.0 seconds)
Removed ribbon trails off plasma eject cases
Shell casing duration reduced from 10 seconds to 5 seconds (making it a max of 10 casings laying around per person for 5 seconds of sustained fire)
Cosmetics
Modified Jaguar head to reduce clipping
Added Plague head
Added Bunny Head
Added Turtle Head
Maps
Furnace (dp5) has had an art pass
Fixed name for Stage 1 Combat
Changed name for Stage 2 Combat to follow the same convention
Aerowalk update: now in sync with workshop version for match making (previous clip fixes)
Code
Added Announcer - He says things about the match and things you do
Greatly improved performance of client-side particle collision
Added map editor sun enabled property
Added cl_weaponcycle to UI
Teleporter meshes now appear in the content browser
Fixed post-fix string issue on date formatting
Fixed issue where bridge tool would fail when two source edges (from different brushes) were identical
Increased max length of addon description
Fixed case sentitivity lua error when calling callWidgetDrawOptions() or callWidgetGetOptionsHeight() with incorrect case (would break Menu.lua if clicking on addon with same name as widget, but different case)
Fixed flicker when selecting addon/widget in menu, selection is now drawn next frame (after filtering occurs)
Players no-longer suicide if they change to the team they're already on (important for master server drop-in on team games)
Changed MM disconnect hover info from "Disconnecting will count as a loss, and you will incur a time penalty" to "Disconnecting will count as a loss" as we don't give time penalties anymore
Sounds in these effects are limited to max length of 3 seconds:
internal/items/armor/armor_green_pickedup.effecttxt
internal/items/armor/armor_red_pickedup.effecttxt
internal/items/armor/armor_yellow_pickedup.effecttxt
internal/items/health/health_50_pickedup.effecttxt
internal/items/health/health_mega_expire.effecttxt
internal/items/powerup_protect/powerup_protect_pickedup.effecttxt
internal/items/powerup_quad/powerup_quad_pickedup.effecttxt
Shotgun low ammo warning is now at 5
Added Gamma Slider and r_gamma
Dropped weapons (i.e. backpacks containing ammo) are now pickup-able when you have full ammo of the dropped weapon type (and can utilize the ammo).
Team spawns: We no-longer favor spawns that have friendly's near by. An enemy have rough-los to a spawn will now fully block it from being used.(note: If all spawns have rough-los from am enemy, it falls back to distance-bias based spawn.)
If you disconnect mid MM game via console, it will now correctly remove you from MM queue (this also catches case when connection is interrupted)
If you disconnect post MM game via console/menu, it will now correctly remove you from MM queue
cl_predict_items now defaults to 0
Matchmaking
Full MM ladder now shown
Added drop in/out for casual modes
Match history now can be filtered by player
Doubles earns 15 CP, CTF earns 20 CP
Losers now receive 20% CP reward
added matchhistoryraw/ for importing to your own databases
Competitive MM unavailable below level 15
Added 'Proving Grounds' playlist - Thread Here
Lua
Replay editor now hides with cl_show_hud
TeamHud: fixed an error due to clients disconnecting
Fixed issue where widget selection wasn't being applied properly
Added AccelMeter widget

Yep! Processing step for them to calculate then they'll be able to play. So many map cases to try cater for but they'll get improvements as tricky spots come up more
No manual placement required, although we have simple links that can be placed to help with some trickier spots that aren't automatically detected.
We're hoping they're a good start, we have pretty high standards and a LOT of foundations are in place with them.
Thanks everyone!

The hype train has finally pulled up at the station. Now we can finally curl up into a fetal position for an hour until we need to start work on 47.1
btw, NEW PLASMAGUN AND BOLTRIFLE MODELS ARE INNNN
Mutators
We've implemented mutators which add a bit of fun to the game for more casual players. We've also retired the old arena game modes and pulled across arena mode as a mutator.
Addon support
We've implemented addon support which allows you to share your widgets and game mods over the workshop. There's a lot of cool widgets out there that people have made, making it easier to get and keep them up to date should really allow people to use them more.
Addon supports asset overriding, so you can bundle custom jump sounds etc in addons too!
For an example on how to create your own addon, check out this post:
Widget and client side modifications
The custom widgets are a great feature for Reflex, but they also allow you to really assist yourself in game. What exactly to allow/dissallow is not an easy thing to decide. For example I think everyone would agree there isn't much gain with custom jump sounds (depends how elitist we go i guess), while I think everyone would agree having a custom armor pickup sound of 25 seconds definately crosses the line.
So what we have done is provided servers with a list of the custom modifications each client has. This isn't easily visible and is only really going to be used by cheat detection people organising competitions. The intent is that some competitions may allow some mods, while others won't.
Experimental Plus
So we've had an experimental ruleset for a few patches now. We work with a small group of advanced players which take part in assisting us in determining which way to adjust the ruleset. It's been brought up that the turn around time for this process is too slow. So what we're doing is providing a new "Experimental_Plus" ruleset to this group which allows them to tweak gameplay on their own build. We're keeping this to just them for now because the goal isn't to have crazy mod servers out there, but to have intellegent subtle tweaks made to improve the gameplay. With the ultimate goal that we can more quickly finesse the gameplay.
I wanted to make this known so people know about it, and also because you guys are all able to connect to these servers and see what they have been doing. I believe the up-coming League will be using this ruleset, for more perhaps talk to @Qualx
Mutators
Implemented sv_startmutators, callvote mutators
Implemented sv_allowcallvotemutators so server admins can deny clients changing mutators
added sv_allowcallvotemutators and sv_startmutators to dedicatedserver_default.cfg (with comment)
Implemented vampire mutator: removes all health pickups, non-self pre-armor damage awards health based off gconst_mutator_vampire_health_for_1damage
Implemented instagib mutator: no pickups, one shot kills, bolt + melee awarded on spawn, unlimited ammo
Implemented melee only mutator: no weapon/ammo pickups, melee only,
Implemented handicap mutator: gives extra health/armor to trailing player, added on TOP of spawned health (i.e. stacks with warmup mutator), clamped at 200/200
Implemented warmup mutator: always awards warmup values of gconst_player_spawn_health_warmup / gconst_player_spawn_armor_warmup + all weapons on spawn
Implemented mutator: big head modee - on gibs, on ragdolls, on players
Implemented mutator: low gravity - half world, grenade, stake gravity
Migrated arena game modes to mutator system
Added mutator icons to scoreboard
Addons
Implemented addon backend
Watches filesystem for change in base/addons folder and reparses disk on notification (rather than only polling disk on install/uninstall) - this allows people to drag new addons in while reflex is running, and reflex sees it.
Triggers steam-requery after assets on disk change
Added "New assets found, restart required" message
Added quick grouping of widgets into addons in widget list on UI (like a treeview but always expanded), hopefully will help organise addons
Code
Increased steam VAC timeout max retry count from 10 to 1000
Added patch for old protocol versions loaded in .replay files to update gamemode indices so things are nicely in order again (now that arena gamemodes are gone)
Weapon restrictor now uses desired weapon selection rather than reading from player state. (this fixes issue where it would pop down & back up, this also fixes selection where it wasn't correctly picking the best desired weapon on spawn - specifically it occured in instagib)
Physx gravity now matched to world gravity
Exposed addon table to lua
Asset (re)loader now caches state of failed assets / queried assets. So if an asset goes missing the game doesn't drop to ~5fps polling all 3000+ assets while it tries to load the missing one
Fixed crash bug which would occur if steam API was not initialised
re_setentityproperty should now work on large string properties also
Secret surprise dev
UI/Lua
Fixed download % on addon dialog to correctly scale 0->100 (isntead of 0->1)
Save & restore menu status on luastate reload (caused when any lua file uploads)
Added staff pick filters on AddonPicker.lua & MatchPicker.lua
Renamed Sort By -> Filter By on AddonPicker.lua & MatchPicker.lua
Provided addonName field on widget to lua
Art
Added new bolt rifle model + effects
Added new plasma gun + effects
Added new melee: cleaver
Added new melee: baseball bat
Added new melee: supporter khopesh
Added new head: juggs
Added new head: hostile hoodie
Fixed shotgun crouch anims (aim + attack)
Gameplay
Burstgun exp integrated into main game
Shotgun exp integrated into main game
Grenades exp integrated into main game
Bolt rifle ammo exp integrated into main game
Experimental
Grenades now point trace (no collision radius)
Plasma ammo changes: low = 40, max = 150, weapon pickup = 75, ammo pickup = 50
Plasma kb now 0.425
Rocket splash radius now 112
Ioncannon: kb now 1.7, damage = 6, reload = 46ms (= total 130dps)
Ioncannon ammo changes: ammo pickup = 50
Let the whinge for 48 wen begin \o/

The concepts shown in the kickstarter were for a style going down the kickstarter route. As well as work done leading up to it.
The early tests in early access with a few textures were just that, tests.
We've said many times before why this route is better, even when making the transition to it in length announcements.
It's faster to produce assets. People turn textures off anyway. As the style has evolved it outperforms needing to do texture lookups and chew a lot of memory. Allows flexibility while mapping to scale assets arbitrarily without having to worry about texel inconsistencies.
I think you're definitely onto something with saying not to try and educate the customers. Best I just stay away from these sorts of threads.

Textures aren't happening for reflex. It's our first indie title entirely from scratch built from absolutely nothing with 3 people. We haven't even been full-time for the entirety of the project.
That q4 video linked looks horrible. Not just aesthetically but also from a technical standpoint. If that's the standard expected from textures then I'd rather not have textures anyway.
Each quake title had full-time staff in a studio environment (yes believe it or not being in the same location helps *gasp*)
Q4 had about 40+ staff for 2 years? Was built on existing doom3
Doom3 40+ staff built on q3 (yes major renderer rewrite... but there's a lot more to a game than a rendering pipeline..that's the small part in the grand scheme of things)
Q3 built on q2... couple of years 30+ staff?
Q2 built on q1... couple of years 20+ staff?
Q1 built for years with 10+ staff and multiple rewrites along the way (6 iirc)
It's all good and well to try say what it should and shouldn't be, but some education is needed on development resources and timelines. To then try and compare a title built with 10 times the amount of resources of tech and tools developed over a decade prior... how about trying to compare it to something built from scratch by 3 people in our timeline. Having a hard time finding something to compare it to? Yeah me too.

Ok it appears i need to chime in.
The judges chosen are respected and impartial.
Matches were played over multiple sessions, i hosted some so i have some of those demos still i believe.
All of the judges votes were done independently and i collated them, the devs had no bias in weighting towards the tallies. The top 3 were a fair margin ahead of the others that made the top 10.
I apologise for the mess up regarding public voting, it was something we originally weren't going to do at all, then we were... then we had real life issues going on that needed to delay for further proper judging and we were going to update the announcement to remove the bite about public voting and well it slipped through. Things happen. I'm sorry. If we do one again there's plenty we've learned from to do it more smoothly.
I have some very rough notes i took down so i could remember and make a cheat sheet for myself later on. I'll take the time to go through them and elaborate on them and the criteria i personally used to assess. I'll also post the top 10.
I'd also like to personally thank everyone for their submissions and hard work it was really great to see.

Improvements
Increased length of sv_startruleset (so you can use experimental_stake)
Spawn system will no-longer fall back to fully random if all spawns had LOS from an enemy
Added r_shadow_resolution 0/1 to allow higher resolution for spotlight shadows, added option to Menu
Added a bit of smarts to the LOD system
Training
Added global + top leaderboards to training mode
Added leaderboards to training menu (selected via dropdown on top right)
EntityShootable's (the targets) now have a melee type.
EntityShootable's and EntityTurret's hits/misses are now counted towards stats on scoreboard (note: stats from race/training are NOT used to calculate your general stats in the profile->statistics screen)
Art
Reduced grenade launcher first person weapon roll
Removed some ioncannon flare particles when impacting players
Added LODs: shotgun, grenade launcher, ioncannon, rocket launcher, additional ammo pickups lod2 (for shadows)
UI
Fixed typo "quality" -> "qualify"
Friends menu "Join" button is now only visible if server is properly contactable (i.e. server has ports forwarded)
Friends menu "Join" button is now disabled if the server is full.
Sound
Bit of a quick overhaul to the sound system. Now has better attenuation for sounds. Additionally has audio occlusion (kept fairly subtle for gameplay sake).
As a result, every sound for the game has had to be adjusted, bare with us as some might still need further iterations and tweaks, but overall there is much more spatial awareness and positional audio occuring.
Revised sound: bolt rifle idle hum
Revised sound: ioncannon idle hum
Experimental
Stake launcher: Fixed popping on players when shooting a stake into a surface they're standing on
Shotgun: now has center pellet in experimental mode
Stake launcher: reload was 1100 now 1250, projectile speed was 3000 now 3750, projectile gravity was 600 now 700, projectile damage was 100 now 110
Plasma Rifle: kb was 0.425 now 0.45, self kb was 2.21 now 2.0, air kb was 2.125 now 1.5
Rocket Launcher: explosion radius was 120 now 115, air kb was 1.5 now 1.0
Ioncannon: air kb was 1.7 now 1.5