[RELz] Oblivion XP

Post » Thu May 26, 2011 11:19 pm

Have you given any thought about the Fable 2 death experience? where you don't die and reload a save, you just get knocked down and lose some XP. I'd love something like that to be in Oblivion using the OblivionXP mod.
User avatar
R.I.p MOmmy
 
Posts: 3463
Joined: Wed Sep 06, 2006 8:40 pm

Post » Fri May 27, 2011 5:20 am

IMO you should tune down the rested XP a little or make it last only for a specific time (ie. if you sleep 8 hours, you get rested XP only for 8 hours). If that's possible?
User avatar
Romy Welsch
 
Posts: 3329
Joined: Wed Apr 25, 2007 10:36 pm

Post » Fri May 27, 2011 12:40 pm

Have you given any thought about the Fable 2 death experience? where you don't die and reload a save, you just get knocked down and lose some XP. I'd love something like that to be in Oblivion using the OblivionXP mod.


That would definitely be an interesting option to have. Another option would be WoW-style corpse running, i.e. you don't get to reload but become a ghost and have to run back to your corpse. Of course both of these would be optional. :)

When I have the core of the mod translated to C++ I'll look into realizing this.

IMO you should tune down the rested XP a little or make it last only for a specific time (ie. if you sleep 8 hours, you get rested XP only for 8 hours). If that's possible?


Currently, when you sleep, you get rested XP per hour that you sleep. I take it you want the rested XP to additionally only be active for the same number of hours that you slept? This can certainly be done if that's what you mean.
User avatar
MISS KEEP UR
 
Posts: 3384
Joined: Sat Aug 26, 2006 6:26 am

Post » Fri May 27, 2011 1:18 pm

Anyhow, from tonight onwards I'll once again have time to work on Oblivion XP, so stay tuned. Also, any ideas you may have for additional features and/or tweaks are most welcome :)


Well, one of the changes I made to your mod was to add an additional section to the appropriate script that gives XP for murders, based (like many of the other XP awards) on one of the PCMiscStats (32, iirc). I know you get XP for the kill itself, but I wanted an additional award geared toward playing an assassin.

When you translate the mod over to C++, will it still be possible for coding-inept people like me to make changes like this? Failing that, can you include built-in support for murder count and maybe some of the other PCMiscStats for people who want them (after all, those who don't can simply change the XP award base for that action to 0)?
User avatar
Cat
 
Posts: 3451
Joined: Mon Dec 18, 2006 5:10 am

Post » Fri May 27, 2011 8:46 am

When you translate the mod over to C++, will it still be possible for coding-inept people like me to make changes like this?


Yes, the ObXP OBSE plugin will add new functions to Oblivion Script that you can use in the TESCS just like any other OBSE function. The goal is to make changes like yours easier (aside from performance issues etc) :)
User avatar
Lily
 
Posts: 3357
Joined: Mon Aug 28, 2006 10:32 am

Post » Fri May 27, 2011 5:25 am

Currently, when you sleep, you get rested XP per hour that you sleep. I take it you want the rested XP to additionally only be active for the same number of hours that you slept? This can certainly be done if that's what you mean.


Yes, that is what I mean exactly. I believe in FO3 the rested XP works like that if I remember correct. Haven't played that one since it was releaced.
User avatar
Sxc-Mary
 
Posts: 3536
Joined: Wed Aug 23, 2006 12:53 pm

Post » Fri May 27, 2011 9:01 am

A small update.

I'm hard at work on the C++ version of Oblivion XP, it's really quite slow due to the many intricacies involved in doing this, but it's progressing steadily nonetheless. I've overcome some initial issues with retrieving the level of actors and the player, and am now moving on to implementing the core leveling control logic of the mod.

I'm aiming at making the mod work without the need to have an esp plugin file at all. The mod goes into a main processing loop as soon as a game is loaded and from there I control all mod logic (a new thread is created for this loop and so hopefully benefits from the multithreading capabilities of modern processors, but this is really not tested well as of yet). The mod will also add several functions that can be used to create standard plugins (esp) with the Construction Set (think player.ModXP, player.SetTotalXP, etc).

If you have any input/suggestions/wishes, I'd be very interested in hearing them.

Cheers,

SF.
User avatar
Marina Leigh
 
Posts: 3339
Joined: Wed Jun 21, 2006 7:59 pm

Post » Fri May 27, 2011 8:33 am

That's all very nice. One .ESP less is one more mod we can use (not that there are many I'd use over this).

On an off-topic note, that corpse run death idea sounds great. I just wish there was a proper way to handle death in Oblivion so such things were possible other than checking for very small HP values and such. You could even make your currently equipped armor's/weapon's durability go down, just like the real thing! :P
User avatar
Darlene DIllow
 
Posts: 3403
Joined: Fri Oct 26, 2007 5:34 am

Post » Fri May 27, 2011 1:30 pm

...
Wow, I forget to visit this thread for a while and look at the awesome news! :D I don't understand much about C++ or any other real programming language so my brain is still trying to comprehend everything but, will there also be a way to define/configure/change some of the formulas used by ObXP? As in, changing the formula itself, not just changing the variables in play. :unsure:

P.S. Will all the XML stuff remain the same with the exception of having the plugin code set the various traits instead of a script? Or will the plugin also feature a way to expand/redirect the current XML stuff completely?
User avatar
*Chloe*
 
Posts: 3538
Joined: Fri Jul 07, 2006 4:34 am

Post » Fri May 27, 2011 1:10 am

Hello, just a bug report of sorts for you.
I didn't really read the thread, so you might very well be aware of these bugs, but it's best to let ya know anyways :)
Firstly, while using Kyoma's Journal Mod, If I read and write into the journal, it gives me exp for reading a new book every time.
Also, if I eat more than one ingredient I get exp only for the first one, or atleast only a message, didn't check the exp in a detailed manner.
And if I touch a stolen item with Z, to move it around, I get exp for stealing an item, so I could conceivable sit there spamming Z on some stolen skooma on the floor and level like mad if I was so inclined.

And lastly, thanks for this awesome friggin mod, it changes the whole feel of the game around and makes it fun again.
User avatar
Tinkerbells
 
Posts: 3432
Joined: Sat Jun 24, 2006 10:22 pm

Post » Fri May 27, 2011 5:05 am

Sounds very good SF. I was wondering back when you first mentioned it, rather Oblivion would even "accept" C++ coding without screwing up, and it seems that it does.
User avatar
Mylizards Dot com
 
Posts: 3379
Joined: Fri May 04, 2007 1:59 pm

Post » Fri May 27, 2011 12:46 am

Wow, I forget to visit this thread for a while and look at the awesome news! :D I don't understand much about C++ or any other real programming language so my brain is still trying to comprehend everything but, will there also be a way to define/configure/change some of the formulas used by ObXP? As in, changing the formula itself, not just changing the variables in play. :unsure:

P.S. Will all the XML stuff remain the same with the exception of having the plugin code set the various traits instead of a script? Or will the plugin also feature a way to expand/redirect the current XML stuff completely?


All the configuration options that are currently available, will be available in the c++ version, as well, plus a few more related to the new way of doing things, and probably some more I'll add along the way.

I'll also be looking into a way to define the several formulae, which will probably require me to create some kind of expression parser - think of using a script command that takes a string value as parameter, which ObXP will then parse and get the correct formula from. It remains to be seen how doable this is, though.

For the moment, I'm simply re-using all the XML files, and the only change is that I'm setting the values directly from c++ rather than from ObScript. I'm thinking of creating an installer program for ObXP that will add the relevant rects to the menu files on installation to make it compatible with all UI mods, but this is as of yet nothing more than an idea (should definitely be possible, but may be hard to get working correctly). Ideally I'd want the user to get a preview of his current UI with the ObXP elements added, which can then be tweaked at install time (i.e. move around the new HUD elements etc during installation).

Hello, just a bug report of sorts for you.
I didn't really read the thread, so you might very well be aware of these bugs, but it's best to let ya know anyways :)
Firstly, while using Kyoma's Journal Mod, If I read and write into the journal, it gives me exp for reading a new book every time.
Also, if I eat more than one ingredient I get exp only for the first one, or atleast only a message, didn't check the exp in a detailed manner.
And if I touch a stolen item with Z, to move it around, I get exp for stealing an item, so I could conceivable sit there spamming Z on some stolen skooma on the floor and level like mad if I was so inclined.

And lastly, thanks for this awesome friggin mod, it changes the whole feel of the game around and makes it fun again.


I'm aware of the Journal Mod issue - this is something I'll be looking into as well for the next version.

Sounds very good SF. I was wondering back when you first mentioned it, rather Oblivion would even "accept" C++ coding without screwing up, and it seems that it does.


OBSE works by injecting c++ code upon launching the Oblivion executable. One of the amazing features of OBSE is it's plugin API, which allows modders to create c++ libraries in e.g. Visual Studio that OBSE then injects along with it's own code. Using the OBSE messaging API I can then listen for events where the game is loaded/saved/exited and call the appropriate functions of my own :) OBSE is not only an amazing script extender but also a very flexible framework for adding proper c++ mods to the game - I really can't begin to say how awesome this is, and how well it's made - Bethesda should really hire the OBSE team for TES5 imo ;)
User avatar
Campbell
 
Posts: 3262
Joined: Tue Jun 05, 2007 8:54 am

Post » Fri May 27, 2011 3:37 am

All the configuration options that are currently available, will be available in the c++ version, as well, plus a few more related to the new way of doing things, and probably some more I'll add along the way.

I'll also be looking into a way to define the several formulae, which will probably require me to create some kind of expression parser - think of using a script command that takes a string value as parameter, which ObXP will then parse and get the correct formula from. It remains to be seen how doable this is, though.
I see, well whatever the outcome, it'll be amazing.

I'm aware of the Journal Mod issue - this is something I'll be looking into as well for the next version.
I was under the impression this was already fixed. Is my memory failing me (again) or was the fix discussed before but not yet added? :unsure:
User avatar
Franko AlVarado
 
Posts: 3473
Joined: Sun Nov 18, 2007 7:49 pm

Post » Fri May 27, 2011 1:27 am

I was under the impression this was already fixed. Is my memory failing me (again) or was the fix discussed before but not yet added? :unsure:


I don't recall this being solved? Well in any case, it can only be caused by one thing: the Journal mod is causing books to be replicated due to which ObXP doesn't recognize it as already being read (ObXP adds read books to a container and checks if that container has the book being read in it before giving XP). I'm not sure what could be done to get around this?
User avatar
Cedric Pearson
 
Posts: 3487
Joined: Fri Sep 28, 2007 9:39 pm

Post » Fri May 27, 2011 3:27 am

I don't recall this being solved? Well in any case, it can only be caused by one thing: the Journal mod is causing books to be replicated due to which ObXP doesn't recognize it as already being read (ObXP adds read books to a container and checks if that container has the book being read in it before giving XP). I'm not sure what could be done to get around this?

It happens due to the use of OpenTextInput. Or are we talking about another problem? I can't think of anything special I do in my Journal Mod except the use of OpenTextInput. Which is a temp form each time it is opened.
User avatar
michael danso
 
Posts: 3492
Joined: Wed Jun 13, 2007 9:21 am

Post » Fri May 27, 2011 11:19 am

It happens due to the use of OpenTextInput. Or are we talking about another problem? I can't think of anything special I do in my Journal Mod except the use of OpenTextInput. Which is a temp form each time it is opened.


Ahhh, well that explains it then! So to fix this I think I'll just have to (somehow) add an exception rule for when OpenTextInput is used :) Thanks for the info!
User avatar
Andrew Lang
 
Posts: 3489
Joined: Thu Oct 11, 2007 8:50 pm

Post » Fri May 27, 2011 10:53 am

Ahhh, well that explains it then! So to fix this I think I'll just have to (somehow) add an exception rule for when OpenTextInput is used :) Thanks for the info!

Hi SirFrederik, how is the mod going on?
User avatar
Roisan Sweeney
 
Posts: 3462
Joined: Sun Aug 13, 2006 8:28 pm

Post » Fri May 27, 2011 6:46 am

SirFrederik, I love your mod.

I modified a version of Oblivion XP to be compatible with More Static Oblivion. I've been using it for my own personal use without any problems. I sent you a PM about it a week or two ago. Anyway, do you mind if I release it on the nexus? You could probably come up with a better patch than mine, as I replace the esp altogether, but mine works. I'll plan on releasing it in a few days if I don't hear from you. At that point I'll take it down if you let me know that it's bothering you.

Thanks for the great mod!
User avatar
Ricky Meehan
 
Posts: 3364
Joined: Wed Jun 27, 2007 5:42 pm

Post » Thu May 26, 2011 10:24 pm

I have a request; being able to set up a custom XP table eg. Level1XP = 100, Level2XP = 300 et.c (no more painstakenly advanced math lol).
User avatar
Prisca Lacour
 
Posts: 3375
Joined: Thu Mar 15, 2007 9:25 am

Post » Fri May 27, 2011 3:13 am

BUMP!
User avatar
kevin ball
 
Posts: 3399
Joined: Fri Jun 08, 2007 10:02 pm

Post » Fri May 27, 2011 8:45 am

Hi SirFrederik, how is the mod going on?


BUMP!


Sorry for the late reply, I was away for the weekend :)

Anyhow, the work on moving everything to c++ is progressing very nicely so far.

I have XP for kills and XP for Misc Actions working smoothly, as well as game settings control, UI stats updating, level up menu, printing custom HUD messages, and controlling player level. And furthermore, I've figured out how to use OBSE's save system so I can just save the info I want with a savegame :) Next up is derived attribute control. Everything is 100% automatic so far and running very smoothly on it's own thread, so that all that needs to be done to make this work is copy the obxp.dll (and optionally the UI files) to Data\OBSE\Plugins and it just works. I'll have to see if I can achieve everything I want without using a .esp altogether, though (e.g. quest XP may become a problem).

Don't expect the next version to be released for quite some time btw: it's lots and lots of work to program something this big in c++, let alone getting it all to work smoothly. It's a hell of a lot more comfortable to do my debugging in Visual Studio though, so that now I can at least figure out what's going wrong without hours of error-and-trial testing with the TESCS :D

SirFrederik, I love your mod.

I modified a version of Oblivion XP to be compatible with More Static Oblivion. I've been using it for my own personal use without any problems. I sent you a PM about it a week or two ago. Anyway, do you mind if I release it on the nexus? You could probably come up with a better patch than mine, as I replace the esp altogether, but mine works. I'll plan on releasing it in a few days if I don't hear from you. At that point I'll take it down if you let me know that it's bothering you.

Thanks for the great mod!


I never received this PM, sorry. Did you send it here to BGsForums?

Anyway, if you want to release a patch (i.e. a separate .esp that modifies Oblivion XP.esp) that is fine. But please do not release a full modified version of Oblivion XP. That is just asking for versioning problems etc. I can help you in making a patch file if needed.

I have a request; being able to set up a custom XP table eg. Level1XP = 100, Level2XP = 300 et.c (no more painstakenly advanced math lol).


Sounds like a good option to have - I'll keep it in mind for the next version :)
User avatar
Eduardo Rosas
 
Posts: 3381
Joined: Thu Oct 18, 2007 3:15 pm

Post » Fri May 27, 2011 9:20 am

I never received this PM, sorry. Did you send it here to BGsForums?

Anyway, if you want to release a patch (i.e. a separate .esp that modifies Oblivion XP.esp) that is fine. But please do not release a full modified version of Oblivion XP. That is just asking for versioning problems etc. I can help you in making a patch file if needed.


Hey, thanks for the response! I think I sent the other PM via the nexus. I don't remember; it's been a while.

Making a patch is the way to go, but I always do it wrong, as I cause CTDs with my attempts at patches. Anyway, I would love your help. If there's a way to do this without requiring COBL as a master, that would be best.

What I need is to replace all instances of player.GetLevel with a variable. Let's call that variable iPlayerLevel, which stores the following:

If cobPcX.iTrueLevel > 0 set iPlayerLevel to cobPcX.iTrueLevel;This is stored in COBLelse set iPlayerLevel to player.GetLevelendif


Basically my mod manipulates the player's level as a way of scaling enemies and loot, while keeping the player's "true" level internally.

You can see my mod here, More Static Oblivion:
http://www.tesnexus.com/downloads/file.php?id=21807

I know of one other mod that could benefit from the change, though it already has a compatibility patch. It is Dynamic Place Centric Scaling, which is here:
http://www.tesnexus.com/downloads/file.php?id=23993

Any help would be appreciated. Thanks!
User avatar
Emzy Baby!
 
Posts: 3416
Joined: Wed Oct 18, 2006 5:02 pm

Post » Fri May 27, 2011 9:12 am

Hey, thanks for the response! I think I sent the other PM via the nexus. I don't remember; it's been a while.

Making a patch is the way to go, but I always do it wrong, as I cause CTDs with my attempts at patches. Anyway, I would love your help. If there's a way to do this without requiring COBL as a master, that would be best.

What I need is to replace all instances of player.GetLevel with a variable. Let's call that variable iPlayerLevel, which stores the following:

If cobPcX.iTrueLevel > 0set iPlayerLevel to cobPcX.iTrueLevel;This is stored in COBLelseset iPlayerLevel to player.GetLevelendif


Basically my mod manipulates the player's level as a way of scaling enemies and loot, while keeping the player's "true" level internally.

You can see my mod here, More Static Oblivion:
http://www.tesnexus.com/downloads/file.php?id=21807

I know of one other mod that could benefit from the change, though it already has a compatibility patch. It is Dynamic Place Centric Scaling, which is here:
http://www.tesnexus.com/downloads/file.php?id=23993

Any help would be appreciated. Thanks!


Ah, I see! Well, that complicates things a little, and I'm not sure traditional .esp patches would work here. I will add a function to the new version which you can use to override the value Oblivion XP uses for player level. In the meanwhile, I'd suggest distributing your modified Oblivion XP.esp with your More Static Oblivion (just don't upload it as a standalone please) to give users of both your mod and Oblivion XP a temporary way out - I'd rather not have different version of Oblivion XP floating around, but this is a rather special case so go ahead and make the changes you need :)

Cheers,

SF.
User avatar
Suzy Santana
 
Posts: 3572
Joined: Fri Aug 10, 2007 12:02 am

Post » Thu May 26, 2011 9:49 pm

Hi!

I'm having problems with this mod!
I have installed it along with Shivering Isles, Knights of the 9 and all DLCs, some visual mods and nothing else.

The new blue bar in the lower left corner is visible and the yellow progress bar in the stats menu is visible, the screen in the right corner where it's supposed to display earned xp is there.

But I don't gain any exp at all.
I've even tried altering the .ini to produce ridiculus amounts of xp and nothing happens.
Please, this is exactly what I've been looking for since I bought Oblivion when it shipped and now I found it but can't use it.
Please help!
User avatar
I’m my own
 
Posts: 3344
Joined: Tue Oct 10, 2006 2:55 am

Post » Fri May 27, 2011 12:18 pm

Ah, I see! Well, that complicates things a little, and I'm not sure traditional .esp patches would work here. I will add a function to the new version which you can use to override the value Oblivion XP uses for player level. In the meanwhile, I'd suggest distributing your modified Oblivion XP.esp with your More Static Oblivion (just don't upload it as a standalone please) to give users of both your mod and Oblivion XP a temporary way out - I'd rather not have different version of Oblivion XP floating around, but this is a rather special case so go ahead and make the changes you need :)


Thanks a bunch!
User avatar
jaideep singh
 
Posts: 3357
Joined: Sun Jul 08, 2007 8:45 pm

PreviousNext

Return to IV - Oblivion