• Vote in November Mapping Competition to select a winner!
  • 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!

Sabrehaven 7.8 Project Discussion

OP
Erikas Kontenis

Erikas Kontenis

Advanced OT User
Joined
Jul 3, 2009
Messages
1,595
Reaction score
207
Location
Lithuania
Finally!! All the outfit & addon quests completed! And there we have the last two:
  • Pirate Outfit Quest
  • Shaman Outfit Quest

Did you knew that once you finishes the great Deeper Banuta quest your shamanic powers enhances greatly!

The Incredible is simple. Hunt or be hunted.

The transportation in Sabrehaven is an easy peasy and costs no delays. If someone are hesitating is the "Please bring me to [City]" functionality was implemented in the 7.8 Tibia then Yes indeed. Here you go back in time at
Jul 17 2006 Archive.
The details about the OPEN BETA will be announced tomorrow. Stay tuned because the beta is going to be huge.
 
OP
Erikas Kontenis

Erikas Kontenis

Advanced OT User
Joined
Jul 3, 2009
Messages
1,595
Reaction score
207
Location
Lithuania
Open Beta. OMG.
I am glad that I can finally announce that Open Beta is coming very very soon! Everyone is welcome to say Hi in-game at 2020-01-10 18:00 CET.
Expected Open Beta Close at 2020-01-24 18:00 CET.

It honestly took me a lot to finally accomplish the comfortable state of Sabrehaven server to announce the open beta. I was hoping so high to manage the beta announcement day till the 2019 and so I did in the very last day of the year the December 31st! I honestly delivered an outstanding performance during this month.

According my repository code analysis I have did 59 commits per last 30 days what results in a 2 commits per day!

Participating in BETA
It is no doubt that participating in to the beta has to be fun and worth! :) The experience stages will be exploring and PKing friendly and the beta players will never be out of gold in the stash. Also, the most active players in bug reporting will be greatly rewarded later in the production release!

Exclusively for BETA only. The ability to instantly skip Rookgaard!

Exclusively
for BETA only. The reward chests full of treasure!

Experience rates in BETA ONLY:
For players with vocation:
Level 6 - 200: 100x
Level 201+: 2x

For players without vocation:
Level 1 - 8: 10x
Level 9+: 1x

Skill level Rate: 25x
Magic level Rate: 15x
Loot Rate: 5x
Frags till red skull: NO RED SKULL 😱


Currently I am working on the server & website shipping to the dedicated hosting server. Once I have done with everything will announce the Sabrehaven website and the further information about the server configurations in production release (Exp stages, frags and etc). Stay tuned and Happy New Years! 🎉🎉
 
OP
Erikas Kontenis

Erikas Kontenis

Advanced OT User
Joined
Jul 3, 2009
Messages
1,595
Reaction score
207
Location
Lithuania
It is gonna be hosted in the France. Sabrehaven game server hosting provider is an ovh.com. Also we do use cloudflare.com for our website to be proxied.

Also, as promised I wish to announce the Sabrehaven (https://sabrehaven.com/) website! However, I didn't had enough time today to finish few of the web page sections however will do that by tommorow. Furthermore, will create soon the advertisement thread and will announce the server in the OTS list.


I wonder if someone will find out the purpose of the Mystic Flames in Edron Academy Towers.
 
OP
Erikas Kontenis

Erikas Kontenis

Advanced OT User
Joined
Jul 3, 2009
Messages
1,595
Reaction score
207
Location
Lithuania
There was one guy curious what do I mean about that I am using Cipsoft leaked resources. Do I just have the converted version of NPCs from .npc to .lua TFS script or how do I implement custom features and etc. So, shortly, I don't want to go very deep in to the implementation of Sabrehaven. However, the majority of our mechanics and resources implementation are based on the reverse engineered binary of CipSoft Tibia. So, all in all, to implement some new functionality of new 7.8 Tibia I have to implement that from scratch. For example, let me share with you guys our humble .npc document example of miss Amber:
Code:
# GIMUD - Graphical Interface Multi User Dungeon
# amber.npc: Datenbank für die Abenteurerin Amber

Name = "Amber"
Outfit = (136,59-113-132-76-1)
Home = [32103,32182,8]
Radius = 4

Behaviour = {
ADDRESS,"hello$",! -> "Oh hello, nice to see you %N."
ADDRESS,"hi$",!    -> *
ADDRESS,!          -> Idle
BUSY,"hello$",!    -> "Sorry, I'm already talking to someone."
BUSY,"hi$",!       -> *
BUSY,!             -> NOP
VANISH,!           -> "See you later."

"bye"             -> "See you later.", Idle
"farewell"        -> *
"how","are","you" -> "I am recovering from a sea journey."
"job"             -> "I explore and seek adventure."
"explore"         -> "I have been almost everywhere in Tibia."
"adventure"       -> "I fought fierce monsters, climbed the highest mountains, and crossed the sea on a raft."
"sea"             -> "My trip over the sea was horrible. The weather was bad, the waves high and my raft quite simple."
"time"            -> "Sorry, I lost my watch in a storm."
"help"            -> "I can't help you much beyond information."
"information"     -> "Just ask and I'll try to answer."
"dungeon"         -> "I have not had the time to explore the dungeons of this isle, but I have seen two big caves in the east, and there is a ruined tower in the northwest."
"sewer"           -> "I like sewers. I made my very first battle experience in the Thais sewers. The small sewersystem of Rookgaard has some nasty rats to fight."
"assistant"       -> "I have a job of great responsibility. Mostly I keep annoying persons away from my boss."
"monster"         -> "Oh, I fought orcs, cyclopses, minotaurs, and even green dragons."
"cyclops"         -> "Horrible monsters they are."
"minotaur"        -> *
"dragon"          -> *
"raft"            -> "I left my raft at the south eastern shore. I forgot my private notebook on it. If you could return it to me I would be very grateful."
"quest"           -> *
"mission"         -> *
"seymour"         -> "I think this poor guy was a bad choice as the head of the academy."
"academy"         -> "A fine institution, but it needs definitely more funds from the king."
"king"            -> "King Tibianus is the ruler of Thais."
"thais"           -> "A fine city, but the king has some problems enforcing the law."
"cipfried"        -> "A gentle person. You should visit him, if you have problems."
"dallheim"        -> "An extraordinary warrior. He's the first and last line of defense of Rookgaard."
"hyacinth"        -> "Hyacinth is a great healer. He lives somewhere hidden on this isle."
"willie"          -> "He's funny in his own, gruffy way."
"obi"             -> "He's a funny little man."
"weapon"          -> "The best weapons on this isle are just toothpicks, compared with the weapons warriors of the mainland wield."
"magic"           -> "You can learn spells only in the guildhalls of the mainland."
"tibia"           -> "I try to explore each spot of Tibia, and one day I will succeed."
"castle"          -> "If you travel to Thais, you really should visit the marvelous castle."

"book"            -> Type=2821, Amount=1, "Do you bring me my notebook?", Topic=1
"notebook"        -> *
Topic=1,"yes",Count(Type)>=Amount -> "Excellent. Here, take this short sword, that might serve you well.", Delete(Type), Create(3294)
Topic=1,"yes"                             -> "Hm, you don't have it."
Topic=1                                   -> "Too bad."

"orcish"      -> "I speak some orcish words, not much though, just 'yes' and 'no' and such basic.", Topic=2
"language"    -> *
"prisoner"    -> *
"orc"         -> "Not the nicest guys you can encounter. I had some clashes with them and was prisoner of the orcs for some months."
Topic=2,"yes" -> "It's 'mok' in orcish. I help you more about that if you have some food."
Topic=2,"no"  -> "In orcish that's 'burp'. I help you more about that if you have some food."

"food"        -> "My favorite dish is salmon. Oh please, bring me some of it."
"salmon"      -> Type=3579, Amount=1, "Yeah! If you give me some salmon I will tell you more about the orcish language.", Topic=3
Topic=3,"yes",Count(Type)>=Amount -> "Thank you. Orcs call arrows 'pixo'.", Delete(Type)
Topic=3,"yes" -> "You don't have one!"
Topic=3       -> "Ok, then I don't tell you more about the orcish language."

"addon",QuestValue(18502)=0,premium -> "Ah, you noticed my new accessory? Sorry, this one is not for sale. It's handmade from rare minotaur leather.", Topic=4
"backpack",QuestValue(18502)=0,premium -> *
"addon",QuestValue(18502)=0 -> "Ah, you noticed my new accessory? Sorry, this one is not for sale."
"backpack",QuestValue(18502)=0 -> *
Topic=4,"minotaur","leather" -> "Well, if you really like this backpack, I could make one for you, but minotaur leather is hard to come by these days. Are you willing to put some work into this?", Topic=5
Topic=5,"yes" -> "Alright then, if you bring me 100 pieces of fine minotaur leather I will see what I can do for you. You probably have to kill really many minotaurs though...",
                 "so good luck!", SetQuestValue(18502,1)
                
"addon",QuestValue(18502)=1 -> Type=5878, Amount=100, "Ah, right, almost forgot about the backpack! Have you brought me 100 pieces of minotaur leather as requested?", Topic=6
"backpack",QuestValue(18502)=1 -> *
Topic=6,"yes",Count(Type)>=Amount -> "Great! Alright, I need a while to finish this backpack for you. Come ask me later, okay?", Delete(Type), SetExpiringQuestValue(18503, 7200000), SetQuestValue(18502,2)
Topic=6,"yes" -> "You don't have that many!"
Topic=6 -> "Too bad."

"addon",ExpiringQuestValue(18503)>0 -> "Please be patient! I am still working on the backpack details. Come back later, okey?"
"backpack",ExpiringQuestValue(18503)>0 -> *

"addon",ExpiringQuestValue(18503)<0,QuestValue(18502)=2 -> "Just in time! Your backpack is finished. Here you go, I hope you like it.", SetQuestValue(18502,3), AddOutfitAddon(136,1), AddOutfitAddon(128,1), EffectOpp(13)
"backpack",ExpiringQuestValue(18503)<0,QuestValue(18502)=2 -> *

"addon",QuestValue(18502)=3 -> "Oh, you also have a nice backpack just like me!"
"backpack",QuestValue(18502)=3 -> *
}
If you have ever seen original Cipsoft NPC resources you can already notice few custom implementations like the miss Amber has addon slot for her outfit. There is ExpiringQuestValue function which helps to easy control the time when she is finished with the backpack job and AddOutfitAddon function which gives addons in general. Of course, there are more custom functions and custom implementations required for more sophisticated NPCs however As I said before I don't want to go too deep regarding that.

To achieve the most of the things right I do researching in the reverse engineered code a lot. I do use several software which helps to understand how the implementation is used to be and then re-translate it to the c++ and human friendly syntax :)

Decompiled binary view

Decompiled binary function graph view

For example, the most unique reverse engineered feature of Sabrehaven is the fire, poison and energy condition system. Because this thing I completely reverse engineered as it supposed to be in the original Tibia. However, to reverse engineer complex stuff completely like original monster AI I am lacking of time and dedication.

All in all, this is what I mean when I say that I am using original Cipsoft resources.

P.s. currently we are running an open beta. So if you want to see more come and explore the content of Sabrehaven.
 

xario

Member
Joined
Feb 27, 2011
Messages
14
Reaction score
23
When you buy for example 40 GFBs - you get those runes stacked.
Shouldn't it be x4, x3 or sth?
Moreover you can't even stack those by yourself.
 
OP
Erikas Kontenis

Erikas Kontenis

Advanced OT User
Joined
Jul 3, 2009
Messages
1,595
Reaction score
207
Location
Lithuania
I suggest added tasks with money and experience rewards how was example on Realesta74 :)
Look link ->
Maybe I will think to implement tasks in the server but currently all I want is to make it a pretty close to perfect replica of 7.8. So custom features will jump in later. But thanks for yours offer!

Can only return vial once for lottery ticket system in edron
Thank you for yours bug report. It is fixed now.
When you buy for example 40 GFBs - you get those runes stacked.
Shouldn't it be x4, x3 or sth?
Moreover you can't even stack those by yourself.
Thank you for yours bug report. It is fixed now.

Last week I have fixed a number of bugs! And all the applause goes to the open beta participants. Thank you very very much for supporting the Sabrehaven server. It means a lot for me that you come in and help to test the server and etc!

Last week, I have fixed such bugs:
  • Citizenship of Liberty Bay. Now you can successfully become an citizen of Liberty Bay by entering the teleport in temple.
  • Fixed description of spell runes.
  • Fixed issues with vials counting when using through hotkey system
  • Fixed issues with runes stacking when buying more than you can carry.
 
Top