Zandronum Chat @
Get the latest version: 3.0
Source Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003343Zandronum[All Projects] Bugpublic2017-11-20 10:522017-11-20 16:26
Assigned ToTorr Samaho 
PlatformMicrosoftOSWindowsOS VersionXP/Vista/7
Product Version3.0 
Target VersionFixed in Version 
Summary0003343: BUMPSPECIAL does not work
DescriptionSorry for the attitude but.... such things get on my nerves.
Skulltag needed it for some CTF stuff or whatever.
But it doesnt mean u cannot fix it correctly, like
do checking for specific actors only, or even introduce
Skulltag only flag like TFLAG flag...

Please fix...
Additional Information    /* [BB] Zandronum keeps Skulltag's BUMPSPECIAL implementation for now.
    // Check for MF6_BUMPSPECIAL
    // By default, only players can activate things by bumping into them
    if ((thing->flags6 & MF6_BUMPSPECIAL) && ((tm.thing->player != NULL)
        || ((thing->activationtype & THINGSPEC_MonsterTrigger) && (tm.thing->flags3 & MF3_ISMONSTER))
        || ((thing->activationtype & THINGSPEC_MissileTrigger) && (tm.thing->flags & MF_MISSILE))
        ) && (level.maptime > thing->lastbump)) // Leave the bumper enough time to go away
        if (P_ActivateThingSpecial(thing, tm.thing))
            thing->lastbump = level.maptime + TICRATE;
Attached Files

- Relationships

-  Notes
User avatar (0018901)
Edward-san (developer)
2017-11-20 13:25

Which maps are affected by this? Can you provide an example of this?
User avatar (0018903)
Borg (reporter)
2017-11-20 15:00

Nothing is affected, because it is this way from ages (Skulltag 0.98d probably?)
I working on a mod and wanted to use BUMPSPECIAL and found it not working at all. So I fast looked up into sources and got suprised like hell..

No wonder, ppl use such stuff to workarond it.
Script works every 15-20 ticks via ACS_ExecuteAlways..
And so much care about CPU and bandwidth usage i hear...

// [Dusk] {9/27/12} Razor wire functionality
script SC_RAZORWIRE (int myteam) {
    for (int i = 0; i < MAXPLAYERS; i++) {
        if (!PlayerInGame (i) ||
            GetPlayerInfo (i, PLAYERINFO_TEAM) == myteam ||
            GetActorHealth (3800+i) <= 0)
        int dist = AproxDistance (0, 3800+i);
        if (dist > 64.0)
        Thing_Damage (3800+i, 5, 0);
        GiveActorInventory (3800+i, "RazorWireSlow", 1);

Issue Community Support
Only registered users can voice their support. Click here to register, or here to log in.
Supporters: No one explicitly supports this issue yet.
Opponents: No one explicitly opposes this issue yet.

- Issue History
Date Modified Username Field Change
2017-11-20 10:52 Borg New Issue
2017-11-20 13:25 Edward-san Note Added: 0018901
2017-11-20 13:25 Edward-san Assigned To => Edward-san
2017-11-20 13:25 Edward-san Status new => feedback
2017-11-20 15:00 Borg Note Added: 0018903
2017-11-20 15:00 Borg Status feedback => assigned
2017-11-20 16:26 Edward-san Assigned To Edward-san => Torr Samaho

Questions or other issues? Contact Us.


Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker