• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

[10.41] TFS 1.0 Custom Version Github Project

Evil Hero

Legacy Member
TFS Developer
Joined
Dec 12, 2007
Messages
1,254
Solutions
27
Reaction score
721
Location
Germany
Since the official tfs 1.0 distro is just supposed to be a standard base for servers and wont have anything custom to be added, I have came to the conclusion to make a fork of it, with requested stuff on the forum.
You can make pull requests or post issues at github for me to track it.

What does this Project exactly mean?

It aims to be a complete clone of the official tfs 1.0 distro at all times, once Mark updates the official distro it'll be merged into my custom version, so it's always up to date.
As I don't want to make compatibility issues, everything which is created for the official 1.0 version can be used for this aswell ofcourse.
However custom stuff made on mine might not work on the official tfs 1.0 version.

Why bother making an own version of tfs 1.0 instead of pull requesting stuff for the official version?

As stated before, most of the stuff I change or is getting added is not really considered necessary for a clean and official version.

What do you aim for with your fork?

At current state tfs 1.0 still lacks imo a few functional things, it's stability is what makes it great.
I want to make a bridge between the functional stuff of 0.4 and the stability of 1.0

Information:

Link to the Github Project: https://github.com/EvilHero90/forgottenserver/tree/custom
Client Version: 10.41
Additional stuff so far:
Ingame Manager
Code:
creature events:
onAppear(cid) (monsters/npcs)
onDisappear(cid) (monsters/npcs)

events:
Player:onGainExperience(target, exp)
Player:onLoseExperience(exp)

spells:
new flags for spells.xml
fist="30" means that only players with a fist skill higher of 30 can use this spell
club,sword,axe,distance,shield,fish


kind regards, Evil Hero.
 

Attachments

  • TFS 1.0 Custom x64 02.09.2014.zip
    942.3 KB · Views: 1,032 · VirusTotal
Go add cast system? Plx
Function onStatsChange? Plx

Great job :)!
Well I respect the effort made by others about the cast system, so this wont be added until someone decides to release his for free.
We have onChangeMana() / onChangeHealth(), but if you give me a good reason why onStatsChange should be added, then I'll consider it :)

he might want to add a stopMove event so we can use at rl project =P
Do you mean a lua function which makes the creature not able to move, or do you want a creaturevent which cancels the walk on return false?

btw, feel free to post issues on github, it's far easier to trace and remember it then :)
 
Todays Progress:

Added lua functions for item attributes: (name/article/attack/def/extradef/armor/hitchance/shootrange) more will follow
:setAttribute("armor", 55) <-- example
1.png
2.png
3.png


I have also been doing a major cleanup in talkactions:

added 2 new tags (groupId="" accountType="")
so we don't have to make in each lua file a check for the right access / accType

Feel free to post issues and make pull requests, I'm thankfull for every tiny bit :)
 
Thank you! I was thinking in doing the same to break Mark dictatorship.But i think you or we should plan first the things, because, you know, its better to always have a clean implementation or its can become an another 0.3.7 distro.
 
The new ceatureevents are awesome! This is a great project, Evil. Thanks for sharing it.
 
This is just what OTs need :p and knowing you this will be grate. And just as J.Dre says the creatureEvents are just way to strong, I will try to come up with cool ideas with it so people know what I'm talking about!
 
Well if you meant to add that function back, take into account that Mark updated the code on those files for player's movement.
I think reverting as it is there would make the player's movement less efficient but dunno
I had to modify this part to make it work on latest tfs
Code:
int32_t LuaScriptInterface::luaMayNotMove(lua_State* L)
  {
  //mayNotMove(cid, value)
  bool boolValue = getBoolean(L, 2, false);
  Player* player = getPlayer(L, 1);
 
well I wont copy it 1:1 I'll try to find a good way on how to solve it :)
 
Please, add function onStatsChange, to me add events
here, modify how you like
Code:
function onChangeHealth(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin)
    return primaryDamage, primaryType, secondaryDamage, secondaryType
end
 
Back
Top