Home Risen Risen2 Risen3 Forum English Russian

Registrieren Hilfe Kalender Heutige Beiträge
Ergebnis 1 bis 12 von 12
  1. #1 Zitieren
    Apprentice
    Registriert seit
    May 2015
    Beiträge
    11
    Hello.

    I signed up here only for the reason of suggesting this idea (and a few others which I will write later), but first let me start by saying that I love Risen (1) and the great mods made by this community. I have completed the game 4 times and still enjoy it with mods. I am by no means a modder or scripter myself, so this is purely an idea for a mod which I think would make Risen a lot better.

    Now, I believe Risen needs a permanent respawn for outside animals after a certain amount of in game time (anything from a few in game days to several weeks). The reason is that the initial feeling of danger in the wilderness is gradually erased as the player kills more enemies and progresses. This makes much of the wilderness seem dead and uninhabited, which kinda breaks immersion. Now before you tell me that this will ruin game balance by providing too much experience, hear me out:

    1.To counter xp gain abuse make respawns give only 1 xp no matter the creature. This will not only make grinding almost useless, but also provide a way to gain that last point of xp in cases where the player only lacks a tiny amount of xp. I dunno if this '1 xp thing' is possible, but a rough way could be to add copied "respawn" types of these creatures to the game (names should be identical in game though).

    2.Only wilderness 'normal' animals respawn (wolves, boars, stingrats, moths, worms, etc.). This means that any creature associated with the ruins will not respawn (scorpions, mantis, lizardmen, etc.) and neither should ogres since they only have a small presence on the island.

    3.when lizardmen start appearing on the surface, their death will cause respawn of normal animals instead. Again this is to prevent the barren feeling of the later parts of the game.

    Only problem I have not yet adressed (as far as I can see) is the items. But in my opinion this is not really a problem. The normal animals don't have any items that can significantly change the game to the advantage of the player, and skinning+ gold selling can only get you so far. However, if people find this to be a problem, maybe a version should be made where respawned enemies provided no loot whatsoever.
    An extra thing which would be neat - if possible - is randomized respawns. This means that respawns aren't created in the exact same spot as the animal killed, but in a random location in a small radius.

    Thanks for reading this. And sorry it wasn't in German, but I'm below average in that language ;-).
    Thalamond ist offline

  2. #2 Zitieren
    Ehrengarde Avatar von Baltram
    Registriert seit
    Jun 2006
    Beiträge
    2.264
    I'd like to see this idea implemented and I agree with most of your thoughts on implementation details (like which monsters should respawn and which not).

    Only thing I'm not happy with is respawned animals giving 1XP... There is no plausible explanation (lore wise) as to why killing a stingrat in one location advances the character and killing another stingrat in a different location does not. (Also this would be bugging for players who like to max out experience.)

    So I would propose instead to look at how many animals of each species can be found in the original game, add up their XP in a global pool for that species and then implement some kind of XP regression like the first 40 stingrats each give 50XP, the next 15 give 40XP, the next 10 give 30XP, the next 10 give 20XP and all the rest give 5XP. (So that theoretically it would be possible to get more XP compared to vanilla but it would involve excessive amounts of time.) To me this sounds like a plausible factor - killing a stingrat for the very first time of course is more enlightening than killing the 47th.

    It would be a cool feature if respawn happened only in places the player hasn't been around for some time.
    Baltram ist offline

  3. #3 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    Generally I prefer "static respawn" like when in gothic 2 new monsters appeared at the beginning of the next chapter. None the less I also had some thoughts about semi random respawn, mostly technical issues.

    The biggest problem in my oppinion are the required information. If i want to respawn a specific monster i need it's location. To be precise it's starting location. It's quiet obvious where that information is stored but i don't know if it's preserved beyond death. If it isn't we have to get it somehow from the unmodified(played) world data. Not impossible but at the very least extremely ugly. Next question is when the respawn should happen. I'm not talking about a specific time after the death rather the moment in the control flow of Risen. Not to mention that storing how long to wait for the respawn isn't easy either. We have to write informaion to a savegame that wasn't meant to be saved. Again not impossible but probably difficult. Although we've done harder stuff. Back to the control flow thingy. Thanks to Baltram we know how to execute stuff "all the time" but i'm not sure how to find the dead monsters in a reasonable way. We could iterate over every thing and respawn whatever we like. Shouldn't impact the performance, Risen already does similar stuff more than once every frame. Still i'd much rather use the AI. Even the dead have the AI running but they are "cleaned up" to heaven, literally. This prevents the AI from being active as far as i know. We could stop the clean up process. Hidden items marked as story relevant or we find the responsible routine. That'd probaby create new problems.

    Bottom line it's difficult especially if you want to do it in a more or less nice way. Maybe someone *cough* who wants to implement it should ask the gothic modders who implemented respawn. They probably faced similar problems and know elegant solutions. I'd like to give it a try but lately i've been even busier and lazier than usual.
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

  4. #4 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    Thanks, now i really want to implement that.

    I think i found solutions for all the problems i know of. If there is time this weekend i'll give it a shot.
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

  5. #5 Zitieren
    Ehrengarde Avatar von Baltram
    Registriert seit
    Jun 2006
    Beiträge
    2.264
    Zitat Zitat von Kuchenschlachter Beitrag anzeigen
    Thanks, now i really want to implement that.
    Sorry for you but good to hear!

    I'm curious: What do you have in mind as for acquiring suitable spawn coordinates?
    Baltram ist offline

  6. #6 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    I found the routine removing dead bodies. It's surprisingly obvious although the actual code doing the removal is just a few lines even in assembly language. No magic there what so ever. Anyways i'm sure the initial location isn't lost upon death and i still want to use the AI approach with disabled clean up. Don't know where i'll exactly revive them. In the first prototype probably where they died.
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

  7. #7 Zitieren
    Apprentice
    Registriert seit
    May 2015
    Beiträge
    11
    Great work! Can't wait to see what you come up with =)
    Thalamond ist offline

  8. #8 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    I'm working on it but it'll take some time. The general idea seems to be promising although there are a lot of problems.
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

  9. #9 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    http://upload.worldofplayers.de/file...gWilderness.7z

    Ok, lets see...

    - dead bodies remain in the game world for 1-4 days
    - dead bodies are still only removed if they carry no loot
    - monster of species gESpecies_Dragonfly, gESpecies_Rotworm, gESpecies_Boar, gESpecies_Wolf, gESpecies_Stingrat, gESpecies_Vulture respawn after 2-28 days starting at the removel of their body NOT at the moment of their death
    - respawned monsters start at the location of their death
    - if you run around in the area where a monster is waiting for respawn you'll increase the time till respawn(probably needs improvement)
    - the death of respawning monsters is counted per species and for every 20 kills rewared XP is reduced by 10 limited to one third of the usual XP
    - respawns carry normal loot
    - The console command DesecrationOfGraves moves most dead monsters that should respawn back into the game world so respawn works with savegames

    I used a extremely simplified version Baltrams suggestion for XP because it's quiet easy to implement. Respawns carry loot because i don't want to anoy the Player with fights that yield no reward and anyways the loot is almost useless.

    This is a beta of sorts. It probably needs some fine-tuning and more testing.
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

  10. #10 Zitieren
    Apprentice
    Registriert seit
    May 2015
    Beiträge
    11
    Great! I'll try it out now. When we are more certain about the number of bugs you should upload to Modstarter if possible =).

    EDIT: by Dragonfly I take it you mean Moth - does that go for all Moths (grave, and whatever the others are called)?

    EDIT2: Nevermind this.

    EDIT3: Now it works. I had simply put the dll in the wrong folder. I tested and got 1 young stingrat to respawn so far. I think you should reduce respawn counter to 2-12 days. 28 is more than I would usually rest during an entire playthrough :-).
    Thalamond ist offline Geändert von Thalamond (24.05.2015 um 21:20 Uhr)

  11. #11 Zitieren
    Apprentice
    Registriert seit
    May 2015
    Beiträge
    11
    Hi,

    The link seems to be dead and people are asking for a respawn mod on Steam now (https://steamcommunity.com/app/40300...6255935768495/)
    that Risen is getting updated. Can someone provide a new link to the mod? :-) @
    Kuchenschlachter
    Thalamond ist offline

  12. #12 Zitieren
    Ritter
    Registriert seit
    May 2009
    Beiträge
    1.688
    The link here still works perfectly fine.
    https://forum.worldofplayers.de/foru...1#post24381514

    I didn't really have any time(or motivation for that matter ) to look into what the patch from steam does(I actually don't even have it on steam ) and why the old mods don't work with it.
    "(...)made it use 64bit(..)".
    Yeah, well, fuck. If that means what I think it means we'd probably have to at least update the build system to whatever they are using(we'd have to figure that out too) for the SDK/mods using the SDK and rebuild all mods.

    I don't see that happening, sorry.

    I mean if they are also using a newer compiler that would actually be pretty cool. Coding pre C++11 was always a pain in the donkey. But since there basically isn't any (SDK using) Risen Modder still active...
    [Bild: dtc_sig.jpg]

    Harald Iken: Überhaupt sollte man als Spieleentwickler das Wort "einfach" oder noch besser "mal eben" aus seinem Wortschatz streichen.
    Kuchenschlachter ist offline

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •