Tele-Arena Game Engine 1.0

Tele-Arena discussions
daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Tele-Arena Game Engine 1.0

Post by daniel_spain »

so I ported my very own sqlite 5.6 port of the original game into a full-scaled customizable game engine.
now this game is for the sysop wanting deep customization. anything that was hard-coded in the original
is now in its own editable database table as well as the original content you used to be able to edit with
message files or the TAEDIT windows-based editor and everything is stored in a single sqlite database
to keep the bistro clean and with very little files.
out of the box it installs with the exact data that cam e in the 5.6d gold release from Sean Ferrell in
1996 and is ready to play. Using the new "help editor" command you can do the following:

!races - edit the races
!classes - editor the classes
!editor - enter the game editor
!mapedit - use the walk-and-edit map editor

this game is done and is feature complete. think of me and the developer just awaiting word from the publisher to go.
you can see this in action on a test server at testbbs.arcticzonebbs.net and if you want editor access to see the editor
in action send me an email on the Sysop account requesting it and who you are here.

daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Re: Tele-Arena Game Engine 1.0

Post by daniel_spain »

i have implemented a feature requested by the testing team..... Arenas now have a configurable list of up to 10 monsters that will spawn with the gong ring.
also barrier types, treasure types, trap types, and transport types have names so you do not have to know the # to use when editing and can pull a list by typing ? from the edit option.

daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Re: Tele-Arena Game Engine 1.0

Post by daniel_spain »

i implemented a couple changes based off feedback and requests....

Now even if you have pvp disabled, you can set a single room in the game to act as a "no-holds-barred" rule-free consequence-less
combat coliseum where anything goes and nothing is lost. By default this is turned off to keep the "classic 5.6 look" but is available
for change in the level 4 config options.

Also you can now modify the character description types by executing the command !desc and once in that editor you can add/edit
eye colors, skin complexions, hair lengths, and hair colors.

Also right out of the box on a fresh install you get a blank canvas you can use to create your own vision of tele-arena that starts
with only 1 race, 1 class, and 1 town room and from there you use the editors to create your own game.... however for those
wanting to start with a "5.6 gold" world for that classic look and feel and just edit that world you can download the file TAGE56.ZIP
and it will give you a clone of 5.6d gold complete with full game database and message file changes to reflect the classic vanilla
game.

I anticipate this game engine to be released sometime late winter/early spring.

daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Re: Tele-Arena Game Engine 1.0

Post by daniel_spain »

resurrection system was completely revamped.... ow when resurrecting you can give users up to 3 options....
Credits, Gold, or Experience, and it is no longer you can only choose 1, if you have the option enabled it will give them up to all 3 choices like so:

1. Resurrect Old Character for 3600 Credits.
2. Resurrect Old Character for 11,480 Gold.
3. Resurrect Old Character for 64,216 Experience.
4. Create New Character
5. Exit

Select an option:

the original game had it credits or nothing and I wan ted to change that to allow resurrection without having to either set it to free or have some form of credit system rolling.

When using Credits, it is like before, you have to have them on your account.
When using Gold after death, you must have the amount in the bank.
When using Experience, you must have at least that amount already accrued.

Another new set of resurrection options allow you to really customize the level a user has to start paying for resurrections, at what level they begin losing stuff on death, and each thing has its own level to set such as inventory, spells. gold, etc... and you can also change the percentages of things lost such as by default dying without a soul stone is a 10% exp loss and with one is a 1% exp loss but maybe you want to go higher and say 30% to make dying a true consequence.

the new resurrection system will be in the 1.10 release.

daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Re: Tele-Arena Game Engine 1.0

Post by daniel_spain »

Death Locations.... so a new feature requested by a sysop was to allow rooms to have their own death location so dying will not always default to the town 1 temple, maybe you died in the caverns and want to refresh in town 4 and go back.... this is something I will be implementing, it will not be in the 1.10 release, but will be coming. it is a great idea, but I only want something like that in the game if you have a way to have access to additional equipment and a vault so you do not resurrect into a town with no way to repurchase lost gear. A future update will be adding an item vault option so towns can also have item vaults to store backup gear if needed.

daniel_spain
Posts: 395
Joined: Sun Aug 09, 2020 2:39 am

Re: Tele-Arena Game Engine 1.0

Post by daniel_spain »

I am seeking a numerologist, mathematician, hell anyone good with number logic.
so Sean Ferrell's original experience system is quite odd, it is hard to replicate
to a format where I can print exp charts.
This poses a problem in ANY version of Tele-Arena because after promotion you
are blind as to what you need to get to the next level.
Now a generic option would be I could always set the experience tables as a hard coded
element but, well that would not be a long term solution.
So what I will be building is a formulae so I can do 1 of 2 things.....
I can run it and it will show the exact number I need to get to the next level or I can run it
to print out a full list of what I need for a range of levels. me and KRacken worked on something
back in 2015 but I never really got around to perfecting it.

Kracken
Posts: 77
Joined: Sat Aug 08, 2020 1:12 pm

Re: Tele-Arena Game Engine 1.0

Post by Kracken »

I digged the snippet and ran it locally with this output:

~ $ ./ta_exp.o
Warrior Sorceror Acolyte Rogue Hunter Druid Archer Necrolyte Legate
124 180 149 120 124 180 124 149 129
620 900 744 600 620 900 620 744 644
1674 2430 2007 1620 1674 2430 1674 2007 1737
3472 5040 4160 3360 3472 5040 3472 4160 3600
6200 9000 7425 6000 6200 9000 6200 7425 6425
10044 14580 12024 9720 10044 14580 10044 12024 10404
15190 22050 18179 14700 15190 22050 15190 18179 15729
21824 31680 26112 21120 21824 31680 21824 26112 22592
30132 43740 36045 29160 30132 43740 30132 36045 31185
40300 58500 48200 39000 40300 58500 40300 48200 41700
52514 76230 62799 50820 52514 76230 52514 62799 54329
66960 97200 80064 64800 66960 97200 66960 80064 69264
83824 121680 100217 81120 83824 121680 83824 100217 86697
103292 149940 123480 99960 103292 149940 103292 123480 106820
125550 182250 150075 121500 125550 182250 125550 150075 129825

(note alignment is OK but this forums strips multiple blanks)

This is two nested loops (outer = levels, inner = class), and each classes struct have constant "name" and a numeric "exp" value (warrior = 62 and sorceror=90)
Looks like it's the "factor" that greatly alter the number of xp required to go through the next level.
The inner loop passes each class and level to calcxp2() + calcxp() and the calculation are done with both methods. IIRC this was generated with the original calcxp().

Yes calcxp() is pretty intricate, doing bitwise right shift on the values (hmm), taking into account 2 levels of promotion. Would be interesting to compare the output with real data and see if it's accurate. I don't remember what was missing.

DeusMachinae
Posts: 2
Joined: Tue Apr 13, 2021 9:40 pm

Re: Tele-Arena Game Engine 1.0

Post by DeusMachinae »

Here you go

https://controlc.com/869b5985

Kracken
Posts: 77
Joined: Sat Aug 08, 2020 1:12 pm

Re: Tele-Arena Game Engine 1.0

Post by Kracken »

DeusMachinae wrote:
> Here you go
>
> https://controlc.com/869b5985

Interesting.. pretty similar to the snippet I do see, just case/wording different.

There's also rules for 2nd level of promo in calcxp and calcxp2 (named GetExp here), but it's just an extra "if"

I put some notes that refer to the original "b training" code so I guess that's why there's "arnarr[usrnum]" in inputs instead of just straights variables like in your snippet.

DeusMachinae
Posts: 2
Joined: Tue Apr 13, 2021 9:40 pm

Re: Tele-Arena Game Engine 1.0

Post by DeusMachinae »

This code is agnostic since I used it to create an offline tool to just print exp charts.

Oh and if you haven't converted exp to a 64-bit int, you ought to. 4 billion exp is awfully low and can be achieved in < 2 months of scripting.

Post Reply