TFork

Everything about ToME 2.x.x. No spoilers, please

Moderator: Moderator

Message
Author
Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

TFork

#1 Post by Lord Estraven »

Those of you who frequent Oook may know about this from my posts there. It's a fork of AnonymousHero's 2.3.x git branch, and as of now it finally has its own repository on Gitorious.

http://gitorious.org/tfork#more

As I state on the project page, there are several goals, including:
* Moving as much stuff from C to Lua as possible, for better extendibility
* Removing stuff I consider silly and/or annoying
* Improving game balance, enjoyability, and “fairness”
* Removing unused code and/or making it useful in some way

Needless to say this is going to be under continual development for a while, and it may be more or less broken at any time (e.g. removal of Mindcraft broke priests, something I'm working to fix at the moment). But I hope to ultimately have something that's more fun to play (and to hack away at) than ToME was. Not sure if I'll succeed, but I figured it was worth trying.

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#2 Post by Lord Estraven »

Gah. Or not. I just accidentally removed something vital, this is going to be hard to fix.

I think I may keep it on my hard drive until it reaches some semblance of stability...

Yottle
Reaper
Posts: 1754
Joined: Sun Jan 26, 2003 11:49 pm
Location: West Virginia

Re: TFork

#3 Post by Yottle »

This sounds good to me. Taking silly/broken stuff out of T2 should be less work than revamping the whole thing.

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#4 Post by Lord Estraven »

I'll be putting it back up shortly. I've decided I'm not even going to bother moving the Mindcraft and other stuff to Lua for now; rather I'll focus on the other goals, since they're shorter term and more in line with my current code editing skills.

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#5 Post by Lord Estraven »

Okay, it's up :) Kind of unbalanced at the moment though. Bolas are still notably buggy; their damage displays incorrectly, and is also kind of silly. Really silly actually, considering that rope darts and meteor hammers have never been practical battlefield weapons, ever.

AnonymousHero
Spiderkin
Posts: 482
Joined: Sat Mar 18, 2006 12:48 pm

Re: TFork

#6 Post by AnonymousHero »

IMO, to really succeed at doing this you'd need to rework a lot of the engine internals to be more flexible. If you're going to move more stuff to Lua you'd probably also want to move to the latest version of Lua and use a non-hacked-up version of Lua.

Anyway, as you've discovered the code base is extremely brittle and lots of code is "reused" in unexpected places; this gets even worse when you factor in the fact that Lua isn't statically compiled... which means you'll have to test an inordinate amount to to discover serious problems where Lua code depends on unexpected code which has been removed/refactored. Even simple removal of code becomes extremely dangerous in the presence of Lua (and absence of a test suite).

Frankly, I'd rather try to move the code base to a sensible compiled language which could interoperate with C at a level where you could move things bit-by-bit. Maybe something like Vala would be suitable? Of course any such port would take a long time...

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#7 Post by Lord Estraven »

Yes, I'm starting to discover the brittleness bit. I combined a couple spells into one, pretty sure I did everything right, and the game borked anyway (something about a nil value being indexed in a Lua function).

Kind of wonder if I should restart this on the T1 codebase. That'd be interesting. Last I checked though that had some kind of issue where browsing spells would crash it on moderns systems (including Windows XP).

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: TFork

#8 Post by darkgod »

I salute your efforts butBTW, why not use TE4 engine to reimplement T2 ? could be a fun project :)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#9 Post by Lord Estraven »

Too much work redoing stuff (or so it appears); nostalgia; and an archaic belief that text-based games should be able to run on a machine with no GPU. ;)

More seriously, if I had the time, energy, and desire to do something like that, I'd be doing a total conversion to another fantasy universe.

Edit: BTW moving stuff to Lua is no longer a goal, and I'm trying out T1 for a base.

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: TFork

#10 Post by darkgod »

Nostalgia is why you WOULD do it IMO ;)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#11 Post by Lord Estraven »

Hmm, even the T2 code seems to use byte integers in some places. Do not get...

Lord Estraven
Uruivellas
Posts: 718
Joined: Tue Dec 13, 2005 12:35 am

Re: TFork

#12 Post by Lord Estraven »

I've closed the project for the following reasons:

- Lack of direction on my part (I don't really know what I want to do with the game)
- Excessively messy codebase
- Failure on my part to learn anything useful from the project
- Clear indications that I don't know how to balance a game properly

Also, stuff is picking up in Real Life (tm). It's not like I have no time for this (yet), but if I'm working on a software project, I want it to be something more interesting and more useful (from a "teaching me how to program" standpoint) than TFork. More original would also be nice.

Anyway, anyone who wants to mess with it (and laugh at the silly things I've done) is free to clone the repo and start hacking away.

AnonymousHero
Spiderkin
Posts: 482
Joined: Sat Mar 18, 2006 12:48 pm

Re: TFork

#13 Post by AnonymousHero »

That's probably a good call.

If you're trying to learn to program "properly" you really don't want to have to take on the ToME code base with all its "intricasies" (if we're being charitable). You're probably better off (learning-wise) if you try to implement a roguelike from scratch in a higher-level language.

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: TFork

#14 Post by darkgod »

Like in TE4 ? ;)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

AnonymousHero
Spiderkin
Posts: 482
Joined: Sat Mar 18, 2006 12:48 pm

Re: TFork

#15 Post by AnonymousHero »

I said "from scratch". Using TE4 is cheating and won't teach you nearly as much :).

(Of course it's hard to define "from scratch" when we have such huge standard libraries in high-level languages, but I digress...)

Post Reply