Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

mgr_inz_rafal

Members
  • Content count

    185
  • Joined

  • Last visited

About mgr_inz_rafal

  • Rank
    Junior Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. mgr_inz_rafal

    [zDoom Dev] Spawning and destroying map things

    Hello, Today I had some more time to work on this issue and I feel obligated to give you an update, since it turned out that what I wrote above is bulls*.*it :) Correct apporach to monitor all active actors: Monitor each thing spawned by engine (even if it's spawned in the inventory) [AActor::StaticSpawn] Remove from monitoring things that are converted into inventory items (Clips, Pistol, etc.) [AInventory::BecomeItem] Remove from monitoring all things that are destroyed (BulletPuffs, etc.) [AActor::OnDestroy] Thanks for your attention :)
  2. mgr_inz_rafal

    [zDoom Dev] Spawning and destroying map things

    OK, here's what I found. To get an exact type name of an actor you can use actor->GetClass()->TypeName.GetChars() But this will give you, for example "Cell" for items spawned either in Inventory or on the map. To ignore the items spawned in the inventory I use the following condition actor->IsKindOf(RUNTIME_CLASS(AInventory))
  3. mgr_inz_rafal

    [zDoom Dev] Spawning and destroying map things

    Thank you, that gives me some insight. Can you help me, assuming I have an AActor class object, how can I check if it is going to be spawned on a map? I tried to figure it out from LinkToWorld(), but failed. Another question: having the same object how can I tell which class it belongs to? Is it an Imp, a Berserk or a Megasphere, for example? Like the "Type" property shown in Doom Builder (2002 = Chaingun, 3005 = Cacodemon). Once I know this I'll be able to manually filter the things I am interested in.
  4. Hello All, I have a question to guys that know zDoom source code. I tried to register on "forum.zdoom.org", but they asked me some questions about zombies in Plutonia and official wikis that I don't know the answer to. Now I cannot register at all (maximum number of tries reached). So I'll try my luck here. I am looking for an ultimate place in the code that will let me track spawning and destroying of map items. What I found so far: Destroying: I hooked myself to the "void AActor::RemoveFromHash()" function of p_mobj.cpp file. This seem to be working correctly. Spawning: I hooked myself to the end of "AActor *AActor::StaticSpawn (PClassActor *type, const DVector3 &pos, replace_t allowreplacement, bool SpawningMapThing)" function. This works kinda ok until I, for example, pickup Plasma Gun. In that case the gun is removed from map, but new thing at position 0,0,0 is spawned. The tag says "$AMMO_CELLS", so I think this is an inventory item that is spawned in game but not on the map, maybe (see picture)? But this doesn't happen for Chaingun and regular ammo, making me confused :/ My idea is to track spawning and destroying of every map thing (I mean the things that appear on automap after "iddtiddt"). Can anyone comment if I hooked myself to correct places?
  5. mgr_inz_rafal

    Horizontally "moving" 3D floors.

    Nice! I like abusing the ACS in similar ways :)
  6. mgr_inz_rafal

    [New HERETIC map] Village of Rotten Bones

    Here's my run made on GZDoom. Surely, I needed save points :) It took me nearly 1h to finish, but at least you can see where all the secrets are. Once again I must admit that I am unable to create small and compact levels :( BTW: Did anyone notice "The Runes"? Visible on the video at 32:52 :)
  7. mgr_inz_rafal

    [New HERETIC map] Village of Rotten Bones

    Thanks @captain crunchy - very helpful comment. @galileo31dos01 As soon as you jump out of the chapel the small room (close to the bars) opens that let you teleport back to the arena in case you used the Chaos Device. And the bars themselves raise once you're approaching the exit, just in case you have some time to spare and want to take a stroll around the level. BTW: For the similar reason I decided not to use Wings of Wrath as these seems able to break the level progression even more drastically.
  8. mgr_inz_rafal

    [New HERETIC map] Village of Rotten Bones

    @Vermil Some explanation: - I set the Linedef 2764 to block monsters because they've been spamming the starting area, making it harder for the player to survive. - Chokepoints yes, your're right. The first one was introduced due to visplane overflows, but anyway, I could have planned them better - Gargoyles in 665 are indeed blocked and can only shoot from the distance Regarding the Maulotaurs and D'Sparil - yes, I am also not fully happy how they worked in the map. Seems that I have much less experience with Heretic bosses than with Cybbie who is almost always a threatning enemy. D'Sparil himself would benefit from some additional monsters appearing here and there, at least on the Hard difficulty. Otherwise I'm not sure, this fight gives me enough trouble the way it is :) And one more comments about locking the player. I did this a lot in my previous map (especially the ones created with help of ACS scripting) and even here I do it for the final encounter. In Heretic, however, you need to take additional measures to handle the power of "Chaos Device". Basically, either you don't put this artifact on map or you need to force player to teleport back to the locked area. So this time I made a decision that, well, if someone wan't to cheese the battle, let it be. Thank you very much for the comments!
  9. mgr_inz_rafal

    [New Map] Murky Bile of the Satan

    Thanks for your valuable feedback. Ammo balancing is something that I struggle the most with. That's why I started to fully support difficulty settings in my newer maps.
  10. mgr_inz_rafal

    [New HERETIC map] Village of Rotten Bones

    Oops, I forgot to mention the savegame limit in the first post. Sorry for that :/ You can still play in Choco (as I do), by disabling this particular limitation in the setup program:
  11. mgr_inz_rafal

    [New HERETIC map] Village of Rotten Bones

    That's right.
  12. mgr_inz_rafal

    [New Map] Murky Bile of the Satan

    Memfis, do you mind if I record your run and post the video on YT?
  13. Dear Ladies and Gentlemen, Today I present you my first Heretic map: Village of Rotten Bones. Are you bold enough to go through the flooded city, murky corridors and basements, forgotten-underground chapels, destroyed churches, graveyards, fiery caves, frozen lakes and other sectors? :) Yes? Great! Therefore, please enjoy the map that can be downloaded here: http://chabowski.eu/DOOM_custom_maps/Village_of_Rotten_Bones/Village_of_Rotten_Bones.zip BTW: Here's the page when you can find my other creations, such as notorious "Intestinal Clog of The Satan" ;-) http://chabowski.eu/custom_doom_maps/ Some facts: - Map is vanilla compatible, yet - if you're observant enough - you may notice some rendering errors due to draw-segs limit being exceeded. I left it there intentionally since it's not particularly dangerous and I already had to severely partition the main city area to avoid visplane overflows... - Skill levels are fully implemented. The easier the skill the less monsters are lurking in the dark corners and more health & ammo is available. Additionally, on easy skill some weapons are dispatched much earlier - The map is moderately detailed - I (hopefully) took care about having enough spider's webs, mosses and correct texture alignment Initially I found vanilla Heretic texture set to be extremely limited, but after all it allows to create some decent, castle like environments. As usual I will appreciate any comments, videos or demos that will help me with fixing issues, balancing the map and overall - being better mapper :) I will also post a video once I am able to finish the map in one go. Finally, some screenies :)
  14. @ETTiNGRiNDER Yes, it is my intended behavior. The point is that as you progress through the level you can peek into the final area from a few different parts of the map and see what scary creatures await there, making you mentally prepared for a fight :) So the premature wake-up is not an issue in my case. I need to double check but you may actually be right about the walls being involved in the bug.
  15. Are you sure? I didn't play Heretic that much in the past to notice it, but in that particular location of my new level this happens literally every single time I test the map. It seems that if you give the flying creatures enough time, they will always find a way to block the walking ones. Monsters in this room are activated by the first shot you make and then just keep moving around until the final encounter several minutes later. There is also one other place when I observd such behavior. I have a monster closed as depicted in the attachment. In the first version there were no Golems but Gargoyles and guess what - the first Iron Lich barely ever managed to teleport to the main map area, because it's been blocked by Gargoyle. Again, the creatures spent a lot of time "together" which probably increased the chances of being stuck. So I lowered the ceiling and replaced Gargoyles with Golems, just to be on the safe side. So maybe there is also some kind of fallback mechanism implemented that blocks the vertical descent of a created but only until some edge condition is met. For example, the request to descend down is blocked, let's say, 100 times in a row and then eventually the engine allows the move, assuming that there is something fundamentally incorrect with the level geometry or item placement. Don't know... Just a guess :)
×