Angband Forums

Angband Forums (
-   Development (
-   -   back porting O-variants? (

wobbly June 23, 2018 18:26

back porting O-variants?
So I've decided to stop thinking about making a variant & start poking around in the code. The plan is to rebuild O, FA & sang from modern V as 1st stand-alones then spliced together (so you'll be able to play sang on the FA maps or toggle on the different monster lists). So the obvious problem is I don't know how to code. This means how far I get depends on how much copy & pasting I can get away with. Anyway got plenty of spare time, so will take a look. Also as Nick is still around of course it'll also depend on his current plans for O & FA.

Anyway for now I'm just opening this thread so I can ramble, ask questions & people can comment. Some plans: keep rune id (perhaps togglable with classic id). Vanilla curses & traps. O-drops hopefully with a toggle for better drop rates. FA monster names where applicable. Most things I think will default to V just for ease of coding.

Gwarl June 23, 2018 20:43

Sounds awesome, I think a lot of people have talked about doing something like this but now it is your thread and your responsibility. :)

Derakon June 23, 2018 20:54

Good luck! You're looking at a fair amount of work, especially I suspect for Sangband.

Pete Mack June 23, 2018 21:41

It's a massive undertaking. V has changed enormously: file names, variable names, functions, data structures, you name it. And then there are all the additions and refactorings. And I don't think diff3 will work very well.

Philip June 24, 2018 00:43

If you manage to recreate even just one of those variants (I'd expect O to be least-bad, because you don't need to mess with skills or with wilderness) on a modern V base, you'll have done a great thing. Best of luck!

Derakon June 24, 2018 01:00

O is definitely the one I'd start with, since the main changes are in how combat works and what item stats are. Combat rules are fairly localized within the game code, and item stats can be changed without any code at all.

Plus, S uses O-style combat (I forget if NPP does as well), so you'd want to build it on top of O anyway.

Nick June 24, 2018 01:28

First, my plans. I had none for O (and have never been involved with S). For FA, at some stage I was going to take current Vanilla, and build a new version of FA on top of it, roughly as you are talking about. The things I consider core for that are the dungeons and wilderness, and the First Age bits of monsters, artifacts, ego items and races. Many other aspects - monster AI, classes, specialties, even combat system - I am undecided on.

In fact, while I have imported some things into V from O/FA (cone-shaped breaths, for example), they have mostly not come in unchanged. Most of the new features I have brought into V (eg traps, ID, curses) are informed by O/FA, but I have tried to rethink them rather than slavishly copy.

Now, obviously, you can do this however you want. My suggestion would be to keep updating your codebase to keep it in line with current V, so at every stage it's current Angband plus your changes.

Note that the file lib/gamedata/world.txt has a list of all the dungeon levels, which I planned expand to give an FA style world map. There is a level structure in game-world.h which has up and down fields, which will need north, east, south and west added.

This has rambled a bit, and there is more I could say, but I'll stop here. Good luck!

Nick June 24, 2018 04:23

Also, I should have said, don't feel constrained by anything I may be planning to do. Do what interests you. My track record indicates I'll end up stealing bits of it :)

Pete Mack June 24, 2018 05:57

One last thing: If you do this, make sure to use (git) source control right from the start. It makes it much easier to bring in other closely related variants thereafter, via headless merge.

wobbly June 24, 2018 13:44

I think I'll start with bringing across the monster list from O & trying to get things like bronze dragons working. Maybe I'll wait for a stable class feature release, that way it'll have necromancers, druids & shield bash there.

All times are GMT +1. The time now is 21:11.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.