Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Modding TES Arena (and Battlespire?)

RanaDinn

Literate
Joined
Aug 25, 2020
Messages
10
Alright, time for the master class... on class editing.
*amazing explanation*

Wow! Thanks again for the prompt reply and the explanation. That helps alot and I can already see things I was missing out on. If I have any questions after I've dug into this some I'll let you know. Again, thanks.
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
I haven't posted updates in a while, I know. I've been busy with... other things. But anyone following might be interested to know that I've begun actually hacking Battlespire, not just extracting and converting resources. The first mod planned is an easy mode. Enemies do half damage, you do double, lower build costs--that sorta thing. I'm making good progress figuring it all out.
 

Poseidon00

Arcane
Joined
Dec 11, 2018
Messages
2,055
Very cool. Will be watching this with interest.

I imagine things like the wilderness, and to some extent the towns, are more or less untouchable.
 

KeighnMcDeath

RPG Codex Boomer
Joined
Nov 23, 2016
Messages
13,062
Wow! I never played Battlespire but I did play the hell out of Arena and esp Terminator Rampage. Soooooo..... any chances for Terminator mobs and weapons in the the mod?
 

Elucidater

Barely Literate
Joined
Nov 1, 2020
Messages
2
Dont suppose there's a way to use the daggerfall CIF viewer tools for Arena is there? Shame daggerfall got way more attention from modders and alot of that content seems gone from the internet forever. And yet still cant edit CIF files for arena after decades.
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
As I’ve mentioned before, CIF files can be created by chaining together IMG files. Portraits are easiest, because you know exactly how many there are, and in what order. If you’re really interested in a viewer, shoot an email to the creator of ArenaToolBox.
 

Elucidater

Barely Literate
Joined
Nov 1, 2020
Messages
2
yeah i dont know how to use a hex editor to pull the image out. Making Cheat tables is really more my thing. Trying to recreate your custom class mod with cheat engine. So far i can change name/race/sex/class/attributes/health/spell points/gold/xp (I'm adding to this one i found here: https://fearlessrevolution.com/viewtopic.php?t=11186) but im trying to figure the everything else now like changing faces or making an item swap and increasing the 40 max size inventory space or removing all equipment restrictions for all classes.

Id be interested in doing a graphics mod using AI to revamp them textures but everytime i try to convert the PNG i made in GIMP back to an img file and place it in the base directory(seems it takes pritority over the global.bsa file so no point in repacking it) it wont convert using ArenaToolBox. I can make everybody nude though. Would be great if i could figure out how to get the CIF files open to edit, the faces and equipment seems to all be in there.

Btw you were saying something about mouse look somewhere (i think when i was playing around with the xbox control GlovePie). Game kinda really needs mouse look but i cant figure out how to implement it.

Also were you gonna release a combined all in one download for all the mods for arena? You mentioned it on page 3 i believe.
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
And here it is, EZ Mode for Battlespire, the first Battlespire mod published to the Nexus. Want to play the game but find it obnoxiously tuned? Well lucky you!

29F1akI.png
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
Is battlespire even worth it?
I would only recommend the game to fans of the Elder Scrolls who want to deep dive, or people who are capable of overlooking the quirks of a DOS era action RPG. The game is more interesting than it is good. At its core, the gameplay and character creation mechanics are nearly identical to Daggerfall. However, there are no simulationist aspects, and no quests as such. It's like a really jank Dark Messiah.
 

KeighnMcDeath

RPG Codex Boomer
Joined
Nov 23, 2016
Messages
13,062
Back when I was only buying physical media and caught wind of Battlespire & Redguard I was really hoping they were modular Daggerfall scenarios, esp Redguard as I tended to play mostly Redguards & Nords. I'd play argonian here and there after i found i loved swimming in arena. Khajit was an option for the meow factor. To my disappointment, I found out these two were NOT add ons so I skipped them as I was buying a ton of other bargain barrel games (kind of like how i do on Gog). {gotta miss physical media shopping in old computer stores)

I say bring on more modding for these two bastard step children.
 
Self-Ejected

TheDiceMustRoll

Game Analist
Joined
Apr 18, 2016
Messages
761
Is battlespire even worth it?
I would only recommend the game to fans of the Elder Scrolls who want to deep dive, or people who are capable of overlooking the quirks of a DOS era action RPG. The game is more interesting than it is good. At its core, the gameplay and character creation mechanics are nearly identical to Daggerfall. However, there are no simulationist aspects, and no quests as such. It's like a really jank Dark Messiah.


based

1611705082681.jpg
 

KeighnMcDeath

RPG Codex Boomer
Joined
Nov 23, 2016
Messages
13,062
To this day the modding hasn't changed for TES (still 1 mod), which is better than Redguard's 0 mods.

I finally saw a video on Arena: Terminator Rampage


Glad they got some of the music in. (Doesn't have the combat music though... boo!)

 
Last edited:

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
I've gotten messages from people thanking me for making Battlespire easier, so they could play through and enjoy it. I doubt any other modders will tackle the game. There simply isn't anyone as crazy, willing to do binary hacking for the benefit of a few dozen people. Interestingly, the Terminator mod for Arena got some traction in the Korean TES fanbase.

DZj2rqp.png
 

Asesino

Literate
Joined
Feb 8, 2022
Messages
5
Alright, time for the master class... on class editing.

You'll need a hex editor:
https://mh-nexus.de/en/hxd/
An alt-code table:
https://www.codetable.net/
And something that can decompress DOS executables:
http://unp.bencastricum.nl/

With these tools, we can begin to modify Arena. We're going to focus on the CD version, since that's the version I've chosen to base all my mods on.

It'll be helpful to know the default class order, because this is the same order in which everything else is sorted.

Mage
Spellsword
Battlemage
Sorceror
Healer
Nightblade
Bard
Burglar
Rogue
Acrobat
Thief
Assassin
Monk
Archer
Ranger
Barbarian
Warrior
Knight

Next up is the location of the data for the various class properties. These are the offsets. In HxD, click SEARCH, then GO-TO, and input the offset for the data you're looking for. I'll go into detail about how to interpret and edit these properties as we move along.

39F84 favored attributes
3A2D5 weapon proficiency
3A2F9 weapon lists
3A321 shield proficiency
3A354 armor proficiency
3AE5E XP
4238E lockpicking
423A0 class IDs, sorted
423B2 class names
4243E class IDs, alphabetized
42525 hit die

FAVORED ATTRIBUTES
This is just fluff. It has no effect on the game whatsoever, except to communicate to the player, based on their class, which two attributes should be focused on. The text is separated by a null character. If you do change anything, make sure you don't exceed the allotted space.

WEAPON PROFICIENCY
The way this works, there are two characters per class. Two null characters means a class can use any weapon. One character followed by a < symbol indicates that a class is restricted to a specified weapon list. So let's have a look at the data to get an idea of what's going on.

I<......L<Q<W<_<..d<j<..............

We know that the Spellsword comes second, and given that the Spellsword is able to use any weapon, we should expect the third and fourth characters to be null, and they are. But what about the Mage? The Mage comes first, and we see an I, followed by a <. That's a weapon list alright. Here's where things get complicated.

WEAPON LISTS
That letter I, what does it mean? Well, it's the start of an address space. An address space that begins with I and ends with p. Maybe that sounds weird, but in the wonderful world of hex it means 49 to 70. I've laid out both the address space and the data so you can see exactly how it works. Each of the weapon lists are separated by the value FF. Before the first FF, we find two characters. If the Mage's weapon list begins at I and ends at J, that means they can use only two weapons. If you're familiar with the game, you'll know that Mages can use only daggers and staffs. We're on the right track. We just need to know what characters represent what weapons. Fortunately this has all been figured out.

IJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop address space
☺. ☺.♂♀ ☺.►☻♦ ☺☻♥♦♂♫► ☺☻•► ☺☻♥•► ☺☻♥♦♫►  weapon lists

. staff
☺ dagger
☻ shortsword
♥ broadsword
♦ saber
♣ longsword
♠ claymore
• tanto
◘ wakizashi
○ katana
◙ dai-katana
♂ mace
♀ flail
♪ war hammer
♫ war axe
☼ battle axe
► short bow
◄ long bow


SHIELD PROFICIENCY
The way shield proficiency works, a class can use the largest shield they're proficient with, as well as any smaller shields. The Mage can use a buckler, and only a buckler. The Spellsword can use a kite shield, a round shield, and a buckler. As you can see, the < symbol is used again.

û<¢<ÿ<ò<ÿ<û<¢<ò<¢<ò<û<ò<ò<ò<¢<ƒ<ƒ<ƒ<

ƒ tower
¢ kite
ÿ round
û buckler
ò none


ARMOR PROFICIENCY
Armor proficiency works the same as shield proficiency. Classes proficient with chain can also wear leather.

♥☺☻☺☺☻☺☻☺☻☻☻♥☺.☺..

. plate
☺ chain
☻ leather
♥ none


XP
These values represent XP needed to reach level 2, after which some algorithms take over. There are two characters for each class. The second is multipled by 256, and the first is added. Mage is up first, and the calculation (3*256)+232 gives us 1000. Is that right? Well the game manual tells us that Mages require 1000 XP to reach level 2.

LOCKPICKING
For lockpicking, take 200 and divide by n, and that's the percentage assigned to a given class. The formula here isn't the whole story when it comes to lockpicking success, but from the data we can see that non-thieving classes get 25%, while the Burglar, who is best at lockpicking, gets 100%. I've provided examples that don't normally occur. You can use these to make classes who cannot steal, and classes who are even more exceptional at stealing.

◘◘◘◘◘♦♦☻♦♦♥♣◘◘◘◘◘◘

☺ 200%
☻ 100%
♥ 66%
♦ 50%
♣ 40%
♠ 33%
◘ 25%
╚ 1%


CLASS IDS, SORTED
Class IDs are the most convoluted part, so bear with me. They draw from several ranges of values, which I've discovered and will provide to you. As far as I know, the advantages and disadvantages are only associated with the default IDs. If you want a class who has the poison immunity of the Barbarian, you can only use the default Barbarian ID. That means no magery, and no critical chance. It's no good to use multiple IDs from the same position either, because the game will draw from the same properties, regarding things like class name, proficiencies, and so on. Magery and critical values appear to be static, unless altered by the default IDs. If you want a class with x2 magery, you'll have to use the default ID for either the Mage or the Healer--that's not to say you can't change everything else, because you can.

mixed
 !"#$σµ╟╚╔╩╦LM♫☼►◄ default data

no spells, no crit
.☺☻♥♦♣♠•◘○◙♂♀♪♫☼►◄ Ranger, Barbarian, Warrior, Knight

magery x1.75
 !"#$%&'()*+,-./01 Mage, Spellsword, Battlemage, Sorceror, Healer

crit
@ABCDEFGHIJKLMNOPQ Monk, Archer

magery x1.75, crit
`abcdefghijklmnopq unused

no spells, no crit
ÇüéâäàåçêëèïîìÄÅÉæ unused

magery x1.75
áíóúñѪº¿⌐¬½¼¡«»░▒ unused

crit
└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤ Burglar, Rogue, Acrobat, Thief, Assassin

magery x1.75, crit
αßΓπΣσµτΦΘΩδ∞φε∩≡± Nightblade, Bard


CLASS NAMES
Just like with the favored attributes, these are separated by a null character. And if you make changes, be sure you don't exceed the allotted space.

CLASS IDS, ALPHABETIZED
This is the alphabetized class list which is used when the player starts a new game. It can actually be ordered any way you like. And interestingly, the player's class ID is drawn from here, not from the other list. What I mean is, the humanoid enemy class list can be completely different from the player class list. That's good, because you may end up creating classes that, as enemies, cause the game to crash. You're still stuck with the 18 slots, with all their associated properties, but it's possible, for example, to make any number of humanoid enemies the same class, or even use a weaker ID. You'll have to play around with it.

HIT DIE
Hit die is D&D parlance referring to the die a player rolls to generate hit points upon leveling. The Acrobat is 10th in the class list, and here we see a ♀ symbol, which is a decimal value of 12. So the Acrobat has a d12 hit die. Easy peasy.

♠♀◙♠◘◘◙◙◘♀♫◘♫►↕▲¶↕

KXOlfYQ.gif

And that'll do it. If you have any questions, feel free to ask.




Thank you for this, and for all the amazing mods; I have been an avid ES gamer since Daggerfall but never sank my teeth into Arena. Your mods are helping rectify that for me!

Question on the tutorial; I understand everything except changing magic. If I wanted to give Knights the ability to use magic, is that possible, and if so, where do I make the modification?

thanks in advance!
a
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
If I wanted to give Knights the ability to use magic, is that possible, and if so, where do I make the modification?
Short answer: kind of. Long answer: as far as I know, the special properties of classes are baked, like the knight's ability to repair their own equipment. So if you alter a class in order to give them magic, they lose those properties. Everything else would remain the same, however. My new classes mod has a wide range of class options, including magic users with heavy armor proficiency. If you want you can just use that. Otherwise in a hex editor in the CD version of the EXE, uncompressed, at offset 42446, you'll want to change ◄ to something else, ± probably.
 

Asesino

Literate
Joined
Feb 8, 2022
Messages
5
If I wanted to give Knights the ability to use magic, is that possible, and if so, where do I make the modification?
Short answer: kind of. Long answer: as far as I know, the special properties of classes are baked, like the knight's ability to repair their own equipment. So if you alter a class in order to give them magic, they lose those properties. Everything else would remain the same, however. My new classes mod has a wide range of class options, including magic users with heavy armor proficiency. If you want you can just use that. Otherwise in a hex editor in the CD version of the EXE, uncompressed, at offset 42446, you'll want to change ◄ to something else, ± probably.
THank you for that very fast reply!

I was hoping to have the Knight with his awesome auto repair and magic user to boot. I have your mod, and I love it; I was just wondering if I can roll a magic knight :)

Thanks for the help, and don’t stop modding Arena, you are bringing a cool old game to the 21st century :)
 

deuxhero

Arcane
Joined
Jul 30, 2007
Messages
11,412
Location
Flowery Land
Next update for OpenTESArena is supposed to make the game nominally playable (emphasis on nominally).
 

Asesino

Literate
Joined
Feb 8, 2022
Messages
5
Moonrise,
If you woudn’t mind one more question. I used unp to unpack the exe and it works fine for the original acd.exe but can’t seem to unpack your custom acd.exe. What tool can I use to unpack your versions?

Thanks again,
A
 

Lemming42

Arcane
Joined
Nov 4, 2012
Messages
6,159
Location
The Satellite Of Love
It's so strange seeing relatively free movement in Arena. I wonder how it'll change the way the game plays, especially if the character and enemy hitboxes are reduced so that you no longer become blocked if you're in the same huge grid square as an enemy. Mouselook is a gamechanger as well, no more slowly rotating to see what's tearing you to shreds from behind.

Hopefully OpenTESArena gets more people to try Arena, it's a fun game and most of the problems with it nowadays come from the unbelievably terrible movement. The game's piss easy otherwise, especially with Spell Reflection which makes the game almost literally play itself in the later dungeons.
 

Moonrise

The Magnificent
Patron
Joined
Jul 7, 2017
Messages
386
Make the Codex Great Again!
I used unp to unpack the exe and it works fine for the original acd.exe but can’t seem to unpack your custom acd.exe.
I think I distributed the class mod uncompressed. You can tell the difference because the uncompressed file size is around 300 kb, while compressed is about half. The game doesn't care either way. It will run just fine.
 

Asesino

Literate
Joined
Feb 8, 2022
Messages
5
I used unp to unpack the exe and it works fine for the original acd.exe but can’t seem to unpack your custom acd.exe.
I think I distributed the class mod uncompressed. You can tell the difference because the uncompressed file size is around 300 kb, while compressed is about half. The game doesn't care either way. It will run just fine.

Hi again,
I took a look at the exe on nexus and it is 150K. The issue is that I can’t unpack it with unp. Exe. Is there another tool I should be using to unpack your custom exe?

Thanks again
A
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom