MantisBT - Zandronum
View Issue Details
0002137Zandronum[All Projects] Suggestionpublic2015-03-26 07:452018-09-30 22:12
Dark-Assassin 
Dusk 
nonefeatureN/A
closedfixed 
 
3.03.0 
0002137: Rune System Change
At the moment, the rune system strictly uses native inventory actors.
If this were to change, it could open the system up quite a lot.

Remove the actor Rune and all child actors.

Change Rune.Type from RuneGiver to actually use Inventory/Powerup actors rather than referencing the native Rune actors.

Set the default undefined duration to as infinite as possible.
However, allow any duration for timed runes.

Add Rune.Slot 0-255, for the possibility of multiple runes.
Picking up other Runes using the same slot will cancel out any other in that slot.
This isn't necessarily needed.
No tags attached.
parent of 0000557closed Dusk Make powerup versions of spread and reflection runes 
Issue History
2015-03-26 07:45Dark-AssassinNew Issue
2015-03-26 11:42arkoreNote Added: 0011898
2015-03-27 11:05DuskRelationship addedrelated to 0000557
2015-03-27 11:06DuskNote Added: 0011899
2015-03-27 11:06DuskAssigned To => Dusk
2015-03-27 11:06DuskStatusnew => acknowledged
2015-03-27 11:06DuskRelationship replacedparent of 0000557
2015-03-27 11:08DuskTarget Version => 2.1
2015-04-25 21:04DuskTarget Version2.1 => 3.0
2015-05-09 22:31DuskNote Added: 0012222
2015-05-09 22:31DuskStatusacknowledged => needs review
2015-05-10 07:16Dark-AssassinNote Added: 0012226
2015-08-18 21:09cobaltStatusneeds review => needs testing
2015-08-18 21:09cobaltDescription Updatedbug_revision_view_page.php?rev_id=7920#r7920
2015-08-18 21:09cobaltSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=7922#r7922
2015-08-18 21:09cobaltNote Added: 0013233
2015-08-18 22:42IvanNote Added: 0013234
2015-12-25 21:47Ru5tK1ngNote Added: 0014022
2016-01-31 23:31Ru5tK1ngStatusneeds testing => resolved
2016-01-31 23:31Ru5tK1ngResolutionopen => fixed
2016-01-31 23:31Ru5tK1ngFixed in Version => 3.0
2016-01-31 23:31Ru5tK1ngDescription Updatedbug_revision_view_page.php?rev_id=8615#r8615
2016-01-31 23:31Ru5tK1ngSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=8616#r8616
2018-09-30 22:12Blzut3Statusresolved => closed

Notes
(0011898)
arkore   
2015-03-26 11:42   
I support this. I also think this will resolve the quirkiness of the runes when switching from one map to another in a hub.
(0011899)
Dusk   
2015-03-27 11:06   
Rune.Slot is a definite No, that is too specific for the engine IMO. I agree with the feature otherwise though and I'm interested in implementing it in the future.
(0012222)
Dusk   
2015-05-09 22:31   
I actually went and did this:
'https://bitbucket.org/crimsondusk/zandronum-sandbox/commits/13cd37099f9e [^]'
Build:'https://dl.dropboxusercontent.com/u/66055976/2015/builds/zandronum-sandbox-runes-150509-2214M.7z [^]'
(0012226)
Dark-Assassin   
2015-05-10 07:16   
Cool. I'll give it a run either late Monday or early Tuesday.
(0013233)
cobalt   
2015-08-18 21:09   
Issue addressed by commit 2023c02646a0: Generalized the rune system (addresses 2137): - Runes are all now actually powerups. - RuneGiver is now a PowerupGiver derivative with some special code to handle runes. - Rune.Type is now effectively an alias of Powerup.Type. This means that spread, prosperity and reflection may now be used as powerups too, and any powerup can be turned into a rune.
Committed by Teemu Piippo [Dusk] on Tuesday 18 August 2015 20:28:38

Changes in files:

 docs/zandronum-history.txt | 1 +
 src/actor.h | 3 +
 src/cl_main.cpp | 11 +-
 src/g_doom/doom_sbar.cpp | 4 +-
 src/g_shared/a_artifacts.cpp | 605 ++++++++++----------------------------------------------------------------------------------------
 src/g_shared/a_artifacts.h | 121 +++----------------
 src/p_mobj.cpp | 4 +-
 src/sv_commands.cpp | 6 +-
 src/sv_main.cpp | 18 +-
 src/thingdef/thingdef_properties.cpp | 5 +-
 wadsrc/static/actors/shared/inventory.txt | 25 ++++
 wadsrc/static/decorate.txt | 1 -
 wadsrc_st/static/actors/skulltagrunes.txt | 50 +++-----
 wadsrc_st/static/decorate.txt | 1 +
 wadsrc_st/static/sprites/drara0.png | 0
 wadsrc_st/static/sprites/drarb0.png | 0
 wadsrc_st/static/sprites/drarc0.png | 0
 wadsrc_st/static/sprites/drard0.png | 0
 wadsrc_st/static/sprites/hasra0.png | 0
 wadsrc_st/static/sprites/hasrb0.png | 0
 wadsrc_st/static/sprites/hasrc0.png | 0
 wadsrc_st/static/sprites/hasrd0.png | 0
 wadsrc_st/static/sprites/hijra0.png | 0
 wadsrc_st/static/sprites/hijrb0.png | 0
 wadsrc_st/static/sprites/hijrc0.png | 0
 wadsrc_st/static/sprites/hijrd0.png | 0
 wadsrc_st/static/sprites/prsra0.png | 0
 wadsrc_st/static/sprites/prsrb0.png | 0
 wadsrc_st/static/sprites/prsrc0.png | 0
 wadsrc_st/static/sprites/prsrd0.png | 0
 wadsrc_st/static/sprites/prsre0.png | 0
 wadsrc_st/static/sprites/ragra0.png | 0
 wadsrc_st/static/sprites/ragrb0.png | 0
 wadsrc_st/static/sprites/ragrc0.png | 0
 wadsrc_st/static/sprites/ragrd0.png | 0
 wadsrc_st/static/sprites/ragre0.png | 0
 wadsrc_st/static/sprites/ragrf0.png | 0
 wadsrc_st/static/sprites/ragrg0.png | 0
 wadsrc_st/static/sprites/ragrh0.png | 0
 wadsrc_st/static/sprites/refra0.png | 0
 wadsrc_st/static/sprites/refrb0.png | 0
 wadsrc_st/static/sprites/regra0.png | 0
 wadsrc_st/static/sprites/regrb0.png | 0
 wadsrc_st/static/sprites/resra0.png | 0
 wadsrc_st/static/sprites/resrb0.png | 0
 wadsrc_st/static/sprites/resrc0.png | 0
 wadsrc_st/static/sprites/resrd0.png | 0
 wadsrc_st/static/sprites/resre0.png | 0
 wadsrc_st/static/sprites/resrf0.png | 0
 wadsrc_st/static/sprites/resrg0.png | 0
 wadsrc_st/static/sprites/resrh0.png | 0
 wadsrc_st/static/sprites/sprra0.png | 0
 wadsrc_st/static/sprites/sprrb0.png | 0
 wadsrc_st/static/sprites/sprrc0.png | 0
 wadsrc_st/static/sprites/sprrd0.png | 0
 wadsrc_st/static/sprites/strra0.png | 0
 wadsrc_st/static/sprites/strrb0.png | 0
 wadsrc_st/static/sprites/strrc0.png | 0
 wadsrc_st/static/sprites/strrd0.png | 0
 wadsrc_st/static/sprites/strre0.png | 0
 60 files changed, 170 insertions(+), 685 deletions(-)

(0013234)
Ivan   
2015-08-18 22:42   
I suppose this only covers the system and not certain runes specifically, right? Because, the reflection rune remains impossible to utilize properly. (Can't tweak values, can't tell who the owner is sometimes (I recall that being a problem, or something along those lines)) So, what about exposing the workings of that specific rune?
(0014022)
Ru5tK1ng   
2015-12-25 21:47   
I was able to create power up versions of Spread, Reflection and Prosperity. I also made every power up into a rune except for Minotaur (doesn't really make sense as one) and Morph (looks to be broken).

@Ivan

This ticket primarily deals with how each rune and power ups are utilized and not necessarily their behavior. I'm guessing the reflection rune specifics might be better served in a separate ticket.