Jump to content

More Dynamic Leveled Lists Mod


Noggog

Recommended Posts

So, I'm a fan of running into a minotaur or freaky big creature way ahead of my level every so often. Makes the game more interesting, in my opinion.

Many mods try to make this happen by copying the freaky-big-creatures (FBC) leveled list entry and making the associated level 1, or much lower.

 

This is very tedious, and very confusing at times to make it happen.

 

 

 

What I was wondering/pondering/daydreaming about is an OBSE plugin that would evaluate leveled lists and dynamically change them to spawn harder mobs ahead of schedule.

- I'm looking for tips, suggestions, possible/impossible, help, Huzzahs

 

------------------------------------------------------------------------------------------------------------

Problem:

 

Right now iLevCreaLevelDifferenceMax only works with creatures that are a lower level than you.

So, if you're level 12,

and ILevCreaLevelDifferenceMax is set to 4:

 

You'll spawn creatures levels 8-12

 

What I want to have is a difference of 4 to make you spawn creatures 8-16

 

-------------------------------------------------------------------------------------------------------------

 

How this would look:

An example vanilla leveled list:

1 - skeleton

1 - zombie

6 - ghost

10 - headless zombie

15 - vampire

 

OBSE would evaluate that list and change it. Say I'm level 1, and ILevCreaLevelDifferenceMax was set to 8, it would change the leveled list to be:

1 - skeleton

1 - zombie

1 - ghost

10 - headless zombie

15 - vampire

 

The ghost was 6, which was in the difference range of 8, so OBSE went in and changed the ghosts level to 1, so that it will spawn for me at level 1.

(OBSE could make a backup list somewhere for reference as you level up)

 

 

Once I hit level two, the list would look like this:

2 - skeleton

2 - zombie

2 - ghost

2 - headless zombie

15 - vampire

 

The headless zombie of level 10 is now in the difference range of 8 (2 + 8 = 10), and so OBSE went in and changed it's level to 2 so it would spawn for me at level 2.

 

-----------------------------------------------------------------

 

Possibilities:

 

- If this could be done, there wouldn't be a need for duplicating higher creatures in the leveled lists and making them labeled as lower levels by hand. It would be automatic.

 

- Also, it could be set to automatically duplicate creatures around your level so that they spawn more often, making a list that maybe looked like this at level 1:

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - ghost

10 - headless zombie

15 - vampire

 

That would be automatic too, and customizable in an ini.

 

- You could also set it up to do something like an "EPIC" button, where it actually will spawn something bigger than you that was twice the level difference, but at a much lower chance. So it would automatically create a list like this at level 1:

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - skeleton

1 - zombie

1 - ghost

1 - ghost

1 - ghost

1 - ghost

1 - headless zombie

1 - headless zombie

1 - vampire

 

This would also be automated and customizable in an ini

 

------------------------------------------------------------

 

This would let people make normal leveled lists that looked like this:

1 - skeleton

1 - zombie

6 - ghost

10 - headless zombie

15 - vampire

 

and have our plugin automatically generate a fully customized leveled list without ever doing anything by hand to the leveled lists of custom mod X

 

 

 

I think this would be an awesome plugin. I'm on a busy Engineering college schedule, but I'm going to try to find time to research it and develop it. Any help would be appreciated! 8)

Here's a link to the OBSE plugins related to leveled lists: http://cs.elderscrolls.com/constwiki/index.php/Category:Leveled_List_Functions_(OBSE)

Pluggy plugins for file manipulation (for list backups): http://cs.elderscrolls.com/constwiki/index.php/Category:File_Functions_(Pluggy)

I'll be pouring over them the next few weeks to see what's possible

Edited by Leviathan1753
Link to comment
Share on other sites

I share the same feelings as you about having higher level enemy spawns. I also change the level range to keep mobs from becoming extinct as I level up, but I always hated that it didn't work for higher level mobs. So the ideas you have sound great to me and it's a mod I'd definitely use. It also sounds plausible, but I'm not familiar with the manipulation of leveled lists so there may or may not be restrictions that would prevent this idea from being possible. Either way I wish you luck in this endeavor.
Link to comment
Share on other sites

I share the same feelings as you about having higher level enemy spawns. I also change the level range to keep mobs from becoming extinct as I level up, but I always hated that it didn't work for higher level mobs. So the ideas you have sound great to me and it's a mod I'd definitely use. It also sounds plausible, but I'm not familiar with the manipulation of leveled lists so there may or may not be restrictions that would prevent this idea from being possible. Either way I wish you luck in this endeavor.

 

Thanks! Yeah, I've no idea the limitations or possibilities yet myself. Gotta do my research and we'll see. 8)

Link to comment
Share on other sites

Stratergy Master did a mod called Dynamic Place Centric Leveling (or something to that extent). Sounds like its close to what your tyring to do. Search the TESNexus for leveling or do an advanced search on the author name Stratergy Master.

 

(I'd post the link myself, but I can't log onto the Nexus sites at work. Which is strange becuase I have access to the boards. :unsure: )

Link to comment
Share on other sites

It's an interesting mod, but not what I was trying to do exactly.

 

His, from what I read, seems to lock down a place to your current level. So, if I visit Goblin Jim's Cave, then that cave is locked to be my level. If I return 15 levels later, it'll still spawn creatures from the level I was when I first stepped in. It still doesn't spawn anything above your level, I don't think.

 

Seems kind of dangerous to me. If you go running around the world exploring every nook and cranny in the beginning of the game, then every nook and cranny will be stuck at level two. 8\

Link to comment
Share on other sites

It's an interesting mod, but not what I was trying to do exactly.

 

His, from what I read, seems to lock down a place to your current level. So, if I visit Goblin Jim's Cave, then that cave is locked to be my level. If I return 15 levels later, it'll still spawn creatures from the level I was when I first stepped in. It still doesn't spawn anything above your level, I don't think.

 

Seems kind of dangerous to me. If you go running around the world exploring every nook and cranny in the beginning of the game, then every nook and cranny will be stuck at level two. 8\

Much like a new game coming out soon... :rolleyes:

 

Yes, but it does have the option to "reset" the areas you've been to. But, thats neither here or there. Figure I'd just throw in some form of help if I could.

 

Anyways, if you ever get this mod put together drop me a pm, I'd be happy to help beta test it.

Link to comment
Share on other sites

Awesome! Thanks for the offer. 8)

 

I'll look into it and its options some more when I get the chance. 8) Some of the coolest mods are the small timer ones with 5 endorsements. Take Spell Components for example, I love that thing!

Edited by Leviathan1753
Link to comment
Share on other sites

I'm on the verge of completing the main script that will update the LLists. Yay! Running into an issue that I could use some brainstorming for:

 

I'm looking for an easy way to find out the FormIDs for all the LLists from all the mods used in game. So far all I've come up with is an .exe program similar to TESLODgen that would load up the mods, process them, and spit out a text file with all the formIDs. This would have to be run every time the load order changed. 8\ Once the text file was there, the esp in game would process the data and make it all happen.

 

------------------

For those interested:

 

The way the script works at the moment is that initially, it will make an array with chunks of four things: the name of the mod, a cloned LL to be manipulated, a cloned LL to act as backup, and the level the first cloned list is calibrated for so it can be skipped quickly if already calibrated.

The mod refers to a text file containing the LList formIDs to be managed.

 

Once this backup array is created, the hardwired LLists are all wiped and a single LL entry pointed to the cloned LL in the array is put in, so whenever the original LL is called, the cloned LList is called indirectly.

 

The first cloned LLists are slowly processed in the background (so that you can begin playing. 2 LLists every 3 seconds? It will be customizable) and updated to be calibrated to your level and your settings. Since the hardwired LLists are pointing to these manipulated clones, these changes will be reflected in game.

 

Every time you level, the manipulated cloned LList refers to the backup and regenerates its leveled list to be calibrated to your new level. I plan for all these updates to be processed slowly (over 15-20m), so they won't choke up your game. This will mean when you level up, the new leveled lists won't appear IMMEDIATELY, but it shouldn't be a problem really.

 

Unfortunately, every time you restart Oblivion, the hardwired LLists will be reset to their original uncalibrated state, and will have to be wiped. This will mean your game will lag a bit on your first save game load after a restart, as the LLists are wiped and fowarded to the cloned lists. The manipulated cloned LLists will remain intact, and will only have to be updated with new information. I'll see if this is a big issue or not once I set up a test run with all the Oblivion LLists.

 

 

All in all, this project is coming along pretty well! It's cool to see that it's actually becoming a possibility. There's still a lot of debugging work to do, and implementation of the customization functions, and finding a way to get that original list of FormIDs, as I don't think there's a way to ask the game to give them to you in game.

 

Hopefully it all comes together and we can leave this silly handedited LList system behind us! XD

Edited by Leviathan1753
Link to comment
Share on other sites

  • 1 month later...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...