atomicstryker / srsmod Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/srsmod
Automatically exported from code.google.com/p/srsmod
Does this thing work? So, um, yeah, check it out and stuff :)
Original issue reported on code.google.com by [email protected]
on 15 Jan 2010 at 2:46
= Requirements =
Allow for easy translation support in the srsmod plugin.
= Implementation Suggestions =
Use sourcemod's built-in translation features.
Original issue reported on code.google.com by [email protected]
on 25 Jan 2010 at 8:43
What steps will reproduce the problem?
1. Have tank_chance_finale 1
2. Unprohibit bosses
3. Play a Finale (Mine was Swamp Fever)
What is the expected output? What do you see instead?
The Tank was unprohibited for both teams. The first team died during the
tank attack, the second made it past him. [2 Tanks had been spawned]
When the second team started the Finale, about 15 seconds later the Rescue
vehicle arrived - so Valves shitty coding assumed the 2 spawned Tanks had
been Finale tanks and their deaths meant the Finale was over already.
How to fix? Downtown will probably want to block the Tank Death Forward.
Original issue reported on code.google.com by [email protected]
on 17 Jan 2010 at 3:51
=Possible Additions to Post-AW srsmod=
- Spawn random hordes if survivors move too slow
- Revamp SI spawn order system (So it's not the random classes as of now)
- Add Scavenge support/features
- Scoring system revamp
- Tank spawn system revamp (ghost tank)
Please comment on the above changes and suggest other changes.
Original issue reported on code.google.com by [email protected]
on 18 Jan 2010 at 8:28
Right now there's no way to do a plugin/module-wide disabled. In my mind
this is absolutely crucial for testing so we can halve the testing spaces
rapidly. It's also a very nice thing for users to have so they can e.g.
disable a huge module right away without changing 10 cvars.
The first thing that should be noticed, disabling a plugin is a reducible
problem to disabling all of the modules. So let's talk about how we can
disable modules:
I propose modules have the following functions:
* OnModuleLoaded callback - register any cvars here
* OnModuleEnabled callback - register any events/timers here
* OnModuleDisabled callback - kill any events/timers and if theres
something active going on (e.g. tank godmode) undo it. basically should
reset the state to before plugin was enabled
* IsModuleEnabled - active check for e.g. user commands or timers you want
to kill off lazily instead of using KillTimer (by doing
if(!IsModuleEnabled()) return Plugin_Stop) <- naturally this would also be
false if the plugin overall was disabled
All of this might need the _MN_ prefix, so don't take the name exactly
letter-for-letter.
Finally the way end users enable/disable the modules/plugin is by toggling
a module-wide/plugin-wide enable CVAR.
Original issue reported on code.google.com by [email protected]
on 16 Jan 2010 at 9:24
Had this crash while playtesting. Item Removal was completely off so its
a) other mods (maybe the Extension?)
b) Tank Hack
c) Infected Despawners fault.
Downtown please look at the dump and enlighten me :)
Original issue reported on code.google.com by [email protected]
on 16 Jan 2010 at 12:21
Attachments:
= Requirements =
Please add a cvar to the ItemRemoval Module to enable or disable ALL Item
removing.
= CVARS =
l4d2_srs_remove_enabled
Enable or Disable removing of anything in the first place
Original issue reported on code.google.com by [email protected]
on 15 Jan 2010 at 2:50
= Requirements =
* One wandering witch should spawn on every map, even maps that don't
normally have witches.
* One tank should spawn on every map, even maps that don't normally have tanks.
= CVARS =
* l4d2_srs_witch_count = -1 no witches, 0 default behaviour, 1 = 1 witch.
reserve 2 and higher for possible future implementations of multiple witches.
l4d2_srs_tank_count = -1 no tanks, 0 default behaviour, 1 = 1 tank. reserve
2 and higher for possible future implementations of multiple tanks.
= Implementation Suggestions =
For tanks, we will be spawning a tank bot (untried but probably
ZombieManager::SpawnTank) and then running the director tank lottery to
properly assign a tank to a player (CDirector::TryOfferTankBot). To force
the lottery to work on all maps, we will fake the "ProhibitBosses" script
value to always be 0 by detouring GetScriptValue.
For witches, we can simply spawn the witch (z_spawn witch).
In both cases we can (already) suppress any additional Director spawns by
blocking ZombieManager::SpawnTank/ZombieManager::SpawnWitch.
In both cases we will probably need to know the X,Y,Z coordinate <-> flow
rate mapping in order to figure out a place to spawn the bosses. Will need
to investigate CTerrorNavArea and those sorts of classes.
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 8:02
= Requirements =
Allow each module to be able to compile into it's own plugin.
Should be implemented after AW builds.
Original issue reported on code.google.com by [email protected]
on 16 Jan 2010 at 11:02
= Requirements =
After a jockey incapacitates a survivor, it will currently take 30 seconds
for the jockey's ability to fully recharge. Change the recharge time to 15
seconds.
= CVARS =
l4d2_srs_jockey_incap_recharge (0 to disable, or a value to specify the #
in seconds how long jockey should recharge)
= Implementation Suggestions =
Investigate all of the z_jockey_* cvars, one of them can surely provide
this functionality for us (e.g. z_witch_threat_normal_range,
z_witch_thread_hostile_range).
= Last Notes =
If it is possible to implement this as a L4D2 cvar change only, do not
write any new code for this. Instead note which cvar we need to change and
what the values mean, and close this issue.
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 8:22
= Requirements =
When playing on the finale, and the finale event has started, then Special
Infected shouldn't be forced to instantly materialize. Instead they should
go into ghost mode as on non-finale maps.
= CVARS =
srs_finale_ghosts 0/1 (1 to enable, 0 to disable)
= Testing Requirements =
Just go through every finale, activate the events, make sure that instead
of materializing you get ghost.
Original issue reported on code.google.com by [email protected]
on 23 Jan 2010 at 8:00
Attachments:
= Requirements =
When a tank spawns it should be impossible to prelight it right away. Reuse
the specification of Frustmod tank anti-prelight.
= CVARS =
Any cvars that Frustmod already has, updated to the naming convention for
srsmod.
= Implementation Suggestions =
Update code from Frustmod to work for L4D2.
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 8:11
L 04/18/2010 - 23:04:20: SourceMod error session started
L 04/18/2010 - 23:04:20: Info (map "c5m1_waterfront") (file
"errors_20100418.log")
L 04/18/2010 - 23:04:20: [SM] Native "UnhookEvent" reported: Invalid hook
callback specified for game event "round_start"
L 04/18/2010 - 23:04:20: [SM] Displaying call stack trace for plugin
"srsmod.smx":
L 04/18/2010 - 23:04:20: [SM] [0] Line 119,
srs.despawninfected.sp::_DI_OnModuleDisabled()
L 04/18/2010 - 23:04:20: [SM] [1] Line 98,
srs.despawninfected.sp::_DI_FlipActivation()
I continue to get this error in my error logs evrey time I start up a game.
Original issue reported on code.google.com by [email protected]
on 20 Apr 2010 at 6:20
What steps will reproduce the problem?
1. Gamemode versus on Dark Carnival 5
2. There will be an infinitely respawning grenade launcher on the top
shorter of the 2 scaffolding towers
Committed a fix already, test to verify. Compiled latest stable_pending
branch .smx attached to issue report.
Original issue reported on code.google.com by [email protected]
on 20 Jan 2010 at 4:15
Attachments:
= Requirements =
# Remove all kit spawns (except saferoom). Replace all static kit spawns
with pills. Remove all dynamic pill spawns and all dynamic kit spawns.
# Remove chainsaw object.
# Remove grenade launcher object.
# Remove special ammo (incendiary/explosive).
# Remove defibrillator object.
= CVARS =
# l4d2_srs_remove_medkits 0/1
# l4d2_srs_remove_chainsaw 0/1
# l4d2_srs_remove_grenlauncher 0/1
# l4d2_srs_remove_specialammo 0/1
# l4d2_srs_remove_defib 0/1
= Implementation Suggestions =
Reuse the code from Frustmod when possible.
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 7:53
What steps will reproduce the problem?
Sorry, no idea what caused this as I wasnt playing.
L 01/18/2010 - 19:22:31: SourceMod error session started
L 01/18/2010 - 19:22:31: Info (map "c1m1_hotel") (file "errors_20100118.log")
L 01/18/2010 - 19:22:31: [SM] Native "GetEntData" reported: Entity 7 (7) is
invalid
L 01/18/2010 - 19:22:31: [SM] Displaying call stack trace for plugin
"srsmod.smx":
L 01/18/2010 - 19:22:31: [SM] [0] Line 169,
srs.waterbrake.sp::WaterBrake_OnGameFrame()
L 01/18/2010 - 19:22:31: [SM] [1] Line 80, srs.main.sp::OnGameFrame()
If this isnt helpful, close and I will report it next time i have more info.
Original issue reported on code.google.com by [email protected]
on 20 Jan 2010 at 12:37
= Requirements =
The witch should become aggressive (go after the survivors) from a further
distance than it currently is.
= CVARS =
l4d2_srs_witch_aggro_distance (0 to disable, ingame units of distance)
= Implementation Suggestions =
Investigate all of the z_witch_* cvars, one of them can surely provide this
functionality for us (e.g. z_witch_threat_normal_range,
z_witch_thread_hostile_range).
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 8:14
= Requirements =
When there are any common infected that are behind any survivors (outside
of their LOS), despawn all the common infected behind them.
= CVARS =
* l4d2_srs_ci_despawn 0/1 (0=disabled, 1=despawn CI that are behind)
* l4d2_srs_ci_despawn_distance (non-negative value of ingame distance units)
* l4d2_srs_ci_respawn 0/1 (0=disabled, 1=respawn despawned CI in front)
= Implementation Suggestions =
We must somehow track when common infected are behind survivors. The most
obvious way is to get their flow rate and compare it to the survivors, but
that would be a dependency.
If there is another way, we need to think of it.
Once we identify which commons are behind the survivors, we can check if
the commons are outside of the LOS of all the survivors, and despawn them
if they are far away.
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 8:09
Purpose of code changes on this branch:
- Create the initial infrastructure
- Add the UnprohibitBosses module
When reviewing my code changes, please focus on:
- Do the files seem well structured?
- Is it easy to find all the helpers/macros/constants?
After the review, I'll merge this branch into:
/default
Original issue reported on code.google.com by [email protected]
on 14 Jan 2010 at 10:33
What steps will reproduce the problem?
Map: Dead Center
Description: I was playtesting alone. After the elevator the server crashed
when entering the big room with fire before safe. I attached the log of
that round.
Original issue reported on code.google.com by [email protected]
on 20 Jan 2010 at 12:41
Attachments:
[SM] Native "GetConVarBool" reported: Invalid convar handle 0 (error 4)
[SM] Displaying call stack trace for plugin "srs.main.smx":
[SM] [0] Line 83, srs.statehelpers\debug.sp::FilteredPrint()
Please fix.
Original issue reported on code.google.com by [email protected]
on 15 Jan 2010 at 3:16
When a server with srsmod and debug on is running, it constantly logs debug
print for 'lowest flow survivor in saferoom'. This not only is a nuisance
to server owners, but it makes running a server with debug prohibitive
since their log files are constantly growing every second, even when the
server is not in use.
I suggest stop checking for lowest flow survivor if there are no humans on
the server, or at the very least disable that debug print if there are no
humans.
Original issue reported on code.google.com by [email protected]
on 24 Jan 2010 at 2:00
= Requirements =
Water brake should slow down the survivors by default 30%, when survivor is
jockeyed he should still move at the slower speed. In addition bunny
hopping or doing any other weird movement patterns should not allow the
survivor to break out of the slower speeds.
= CVARS =
// Enable the Water Brake functionality
srs_water_brake "1"
// How much Survivors will be slowed down in Water, 0.7 means 70% speed
srs_water_brake_speed "0.7"
= Notes =
This is in srsmod already, it just ships off by default, so make sure it
works correctly since it has had 0 testing.
Original issue reported on code.google.com by [email protected]
on 20 Jan 2010 at 4:52
Right now our CVARs are pretty inconsistent. I think we should take a few
steps.
- l4d2_srs_ is too long, shorten to srs_
- Every module needs a CVAR to enable/disable all of it, also the entire
mod needs a global cvar. so srs_enabled 0/1 and srs_module_name (why not
_enabled? too long imho) 0/1
At first I was thinking every other cvar should be
srs_module_name_insert_here so it's immediately fast to identify where..
but then I realized it gets redundant:
- srs_despawn_infected_respawn 0/1
- srs_despawn_infected_respawn_distance 0/1
BLAH.
How about at least ONE or more words from the module name:
- srs_infected_respawn 0/1
- srs_infected_respawn_distance 0/1
Much better.
Original issue reported on code.google.com by [email protected]
on 16 Jan 2010 at 9:07
= Requirements =
In order to properly add scoring modules, we need functions to do the
following:
Find the flow % of individual survivors.
Find out what is possible to override on the client 'tab' scoreboard.
A way to display end of round scores.
= Implementation Suggestions =
Add calls to left4downtown or suggest sdkcalls as neccessary.
End of round scores may be displayable through a MOTD page, or if possible,
overriding the final scoreboard tally.
Original issue reported on code.google.com by [email protected]
on 24 Jan 2010 at 2:07
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.