• 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!

Nostalrius 7.7

I apologize if this is the wrong section for ask for help for this, but I am unsure where else to go, but I managed to add custom sprites to my server, but for some reason when I add the new items.srv to the RME made for Nostalrius, whenever I load up the map it freezes at 20% on loading objects. Could anyone tell me what exactly I am doing wrong? I'm already loading the custom .spr and .dat in the map editor as well.
 
I already do that, but replacing the item.srv with the existing items.srv is what is causing it to crash.
 
I already do that, but replacing the item.srv with the existing items.srv is what is causing it to crash.
I dont know exactly all the flags that trigger this, but for example
Attributes = {Defense=42,Vocations=8,Weight=5700} would make it stuck at 20% for me also
when using Attributes = {Defense=52,Weight=5700} does not,
hope it leads you somewhere ^^
 
Will check it out, thank you.

Edit
Got it to work now, thank you for that! :) Also noticed that for some reason the last item in the items.srv list doesn't get loaded by the map editor, so when I was wracking my brains on why it wasn't working with a single item I added multiple of the same item with different IDs and it worked. xD So that's how I noticed it.

My last question, then I won't bother people with any more, is how do I add the floor reset on my tiles? I see there are these blue texture on a lot of areas and can be shown/hidden in RME if I enable/disable special tiles, but I simply cannot find where to add them myself, any hints? :)
 
Last edited:
Will check it out, thank you.

Edit
Got it to work now, thank you for that! :) Also noticed that for some reason the last item in the items.srv list doesn't get loaded by the map editor, so when I was wracking my brains on why it wasn't working with a single item I added multiple of the same item with different IDs and it worked. xD So that's how I noticed it.

My last question, then I won't bother people with any more, is how do I add the floor reset on my tiles? I see there are these blue texture on a lot of areas and can be shown/hidden in RME if I enable/disable special tiles, but I simply cannot find where to add them myself, any hints? :)
As you can see on the picture there are 2 buttons named PZ but if you hover over the most right one it says 'Refresh Zone Tool'.
That's what those blue tiles are, they reset tiles back to original state after SS.
Try using ctrl + the most right PZ to remove them

1679065436853.png


Hope this helps!
 
Anyone got OTCV8 to work with nostalrius? ends up saying wrong password for me. However got it compatible with Znote after changing iologindata.Cc file

ignore: I'm a retarD X)
 
Last edited:
Sorry to be a pest but would someone be able to upload a compiled Nostalrius for Windows x64 based off the latest version on the GitHub? [GitHub - Ezzz-dev/Nostalrius: Nostalrius is a 7.7 Tibia Clone Project based on The Forgotten Server 1.2 and CipSoft files. (https://github.com/Ezzz-dev/Nostalrius)]

I've been able to get a server running locally (I'm only wanting to play locally myself) using some of those pre compiled versions found on page 6 of this thread. But those versions didn't include any of the fixes related to spells cast by monsters (dragons are very tame for example).

If someone can do so and upload I'd massively appreciate it.



Once that's done I'll repay the community and write up a detailed tutorial for anyone like myself who just wants to know how to connect the database, server and website (account creation) for playing locally. I can also include my updated NPCs-- Sam and other weapon merchants now buy and sell almost all equipment available in the game at a similar price to Antica in 7.72 based off my memory. This emulates the market and allows you to profit and upgrade your equipment.

I've also been looking for handy ways to introduce a "pause" button for offline single player versions of old-school Tibia. The best I've come up with so far is to have the temple NPC sell (1gp) a modified stealth ring that lasts forever and change all the monsters in-game to not be able to see invisible characters... So whenever your dog starts barking at you for food you can equip your "pause" ring and not worry about dying AFK regardless of where you are on the map (and mentally agree with yourself not to use it to cheat). Lack of pause functionality is the main reason I can't play online Tibia anymore, too old, too much crap going on around me irl.


Thanks in advance.

-- Edit --

Thank you Ezzz, appreciate the release. Really easy to set up and is running well.
 
Last edited by a moderator:
Anyone got OTCV8 to work with nostalrius? ends up saying wrong password for me. However got it compatible with Znote after changing iologindata.Cc file

ignore: I'm a retarD X)
what is the problem >? xd
 
there is any tutorial all in one to install specifically this nostaurius 7.7 on ubuntu?
 
Great server and great release. It will be a small amount of work to get this perfect. But not that much work at all and to have something free like this that includes all the books and signs etc from Tibia 7.7 is amazing. Big credits.

There was a bug on the loose stone pile at the entrance of Elvenbane. You can't use runes on loose stone piles so you couldn't remove the fire field to enter the cave.

TypeID = 593
Name = "a loose stone pile"
Flags = {Bank,UseEvent,Unmove,Avoid}
Attributes = {Waypoints=160}

I removed the flag "Avoid" and this has fixed the bug, I can now remove the fire field and the loose stone pile still works perfectly. I've done some testing and can't see any problem. Am I overlooking something and was that "Avoid" flag important in some way I'm missing?
Post automatically merged:

There are a few other little issues here. Personally I'm convinced that some monsters are now spamming far too much on this server. Dragons are sometimes shooting 7 GFBs in 30 seconds and averaging around 4-5 every 30 seconds. Based on cams from that amazing Old Tibia YouTube channel I'm pretty sure they should really average around 2.5 GFBs every 30 seconds.

What are the thoughts of everyone else? This is an easy fix by increased the "chance" figure on the dragon script. I'm wondering if I do this should I increase all the other monster spell chances by the same amount or should I test them all separately?



Another oddity which will be a little more challenging to fix is that I think shield blocking (both by monsters and players) is overpowered. Example:-

A knight with 60 sword skill and a giant sword will be able to knock a dragon down to low yellow/red hp and it actually feels quite similar to how Tibia felt back then (in short- knights could be a bit shit). But then when the dragon starts running it seems to go into full defense mode (is this a real function from Tibia?) and it blocks like 90% of your hits suddenly. Very strange.

You can see the same thing if you have like 13 club skill and a mace, you'll be able to knock an orc or troll down until it runs but then suddenly it's almost impossible to finish it off.
 
Last edited:
I just dont remember if it used to be like that, but i saw some youtube and it seems that he dont gain defense for run.
Great server and great release. It will be a small amount of work to get this perfect. But not that much work at all and to have something free like this that includes all the books and signs etc from Tibia 7.7 is amazing. Big credits.

There was a bug on the loose stone pile at the entrance of Elvenbane. You can't use runes on loose stone piles so you couldn't remove the fire field to enter the cave.

TypeID = 593
Name = "a loose stone pile"
Flags = {Bank,UseEvent,Unmove,Avoid}
Attributes = {Waypoints=160}

I removed the flag "Avoid" and this has fixed the bug, I can now remove the fire field and the loose stone pile still works perfectly. I've done some testing and can't see any problem. Am I overlooking something and was that "Avoid" flag important in some way I'm missing?
Post automatically merged:

There are a few other little issues here. Personally I'm convinced that some monsters are now spamming far too much on this server. Dragons are sometimes shooting 7 GFBs in 30 seconds and averaging around 4-5 every 30 seconds. Based on cams from that amazing Old Tibia YouTube channel I'm pretty sure they should really average around 2.5 GFBs every 30 seconds.

What are the thoughts of everyone else? This is an easy fix by increased the "chance" figure on the dragon script. I'm wondering if I do this should I increase all the other monster spell chances by the same amount or should I test them all separately?



Another oddity which will be a little more challenging to fix is that I think shield blocking (both by monsters and players) is overpowered. Example:-

A knight with 60 sword skill and a giant sword will be able to knock a dragon down to low yellow/red hp and it actually feels quite similar to how Tibia felt back then (in short- knights could be a bit shit). But then when the dragon starts running it seems to go into full defense mode (is this a real function from Tibia?) and it blocks like 90% of your hits suddenly. Very strange.

You can see the same thing if you have like 13 club skill and a mace, you'll be able to knock an orc or troll down until it runs but then suddenly it's almost impossible to finish it off.
C++:
int32_t Monster::getDefense()
{
    int32_t totalDefense = mType->info.defense + 1;
    int32_t defenseSkill = mType->info.skill;

    /*fightMode_t attackMode = FIGHTMODE_BALANCED;

    if ((followCreature || !attackedCreature) && earliestAttackTime <= OTSYS_TIME()) {
        attackMode = FIGHTMODE_DEFENSE;
    }

    if (attackMode == FIGHTMODE_ATTACK) {
        totalDefense -= 4 * totalDefense / 10;
    } else if (attackMode == FIGHTMODE_DEFENSE) {
        totalDefense += 8 * totalDefense / 10;
    }*/

    if (totalDefense) {
        int32_t formula = (5 * (defenseSkill) + 50) * totalDefense;
        int32_t randresult = rand() % 100;

        totalDefense = formula * ((rand() % 100 + randresult) / 2) / 10000.;
    }

    return totalDefense;
}

Edit this code in monster.cpp and when the monster goes to run it will keep its defense like full health.
this balanced mode equals the defense that is in the monster folder.
 
Last edited:
Another oddity which will be a little more challenging to fix is that I think shield blocking (both by monsters and players) is overpowered. Example:-

A knight with 60 sword skill and a giant sword will be able to knock a dragon down to low yellow/red hp and it actually feels quite similar to how Tibia felt back then (in short- knights could be a bit shit). But then when the dragon starts running it seems to go into full defense mode (is this a real function from Tibia?) and it blocks like 90% of your hits suddenly. Very strange.

You can see the same thing if you have like 13 club skill and a mace, you'll be able to knock an orc or troll down until it runs but then suddenly it's almost impossible to finish it off.
No, it wasn't like that in real Tibia.
 
Sorry to be a pest but would someone be able to upload a compiled Nostalrius for Windows x64 based off the latest version on the GitHub? [GitHub - Ezzz-dev/Nostalrius: Nostalrius is a 7.7 Tibia Clone Project based on The Forgotten Server 1.2 and CipSoft files. (https://github.com/Ezzz-dev/Nostalrius)]

I've been able to get a server running locally (I'm only wanting to play locally myself) using some of those pre compiled versions found on page 6 of this thread. But those versions didn't include any of the fixes related to spells cast by monsters (dragons are very tame for example).

If someone can do so and upload I'd massively appreciate it.



Once that's done I'll repay the community and write up a detailed tutorial for anyone like myself who just wants to know how to connect the database, server and website (account creation) for playing locally. I can also include my updated NPCs-- Sam and other weapon merchants now buy and sell almost all equipment available in the game at a similar price to Antica in 7.72 based off my memory. This emulates the market and allows you to profit and upgrade your equipment.

I've also been looking for handy ways to introduce a "pause" button for offline single player versions of old-school Tibia. The best I've come up with so far is to have the temple NPC sell (1gp) a modified stealth ring that lasts forever and change all the monsters in-game to not be able to see invisible characters... So whenever your dog starts barking at you for food you can equip your "pause" ring and not worry about dying AFK regardless of where you are on the map (and mentally agree with yourself not to use it to cheat). Lack of pause functionality is the main reason I can't play online Tibia anymore, too old, too much crap going on around me irl.


Thanks in advance.

-- Edit --

Thank you Ezzz, appreciate the release. Really easy to set up and is running well.
Compiled Nostalrius x64 from repo with fix iologindata.cpp
 

Attachments

  • theforgottenserver.exe
    1.7 MB · Views: 29 · VirusTotal
Last edited:
Compiled Nostalrius x64 from repo with fix iologindata.cpp
The code execution cannot proceed because boost_filesystem-vc143-mt-x64-1_82.dll was not found.
Reinstalling the program may fix this problem.

I think everyone get this error when openning theforgottenserver.exe
 
data/globalevents/globalevents.xml
XML:
<globalevent name="Player Save" interval="1800000" script="playersave.lua" />


data/globalevents/scripts/playersave.lua
Lua:
local function serverSave()
    Game.saveGameState()
    broadcastMessage("Server saved, next save in 30 minutes.", MESSAGE_STATUS_WARNING)
    return true
end

function onThink(interval, lastExecution, thinkInterval)
    broadcastMessage("Automatic Serversave in 10 seconds!", MESSAGE_STATUS_WARNING)
    addEvent(serverSave, 10000)
end


data/talkactions/scripts/saveserver.lua
Lua:
function onSay(player, words, param)
    if not player:getGroup():getAccess() then
        return true
    end

    if player:getAccountType() < ACCOUNT_TYPE_GOD then
        return false
    end

    Game.saveGameState()
    player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Server is now saved.")
end


data/talkactions/talkactions.xml
XML:
<talkaction words="/saveserver" script="saveserver.lua" />


src/luascript.cpp add on line 1635 ~

C++:
registerMethod("Game", "saveGameState", LuaScriptInterface::luaGameSaveGameState);
and add on line 3939 (after luaGameSetGameState)
C++:
int LuaScriptInterface::luaGameSaveGameState(lua_State* L)
{
    // Game.saveGameState()
    g_game.saveGameState();
    pushBoolean(L, true);
    return 1;
}

src/luascript.h add on line 538 ~
C++:
static int luaGameSaveGameState(lua_State* L);


enjoy
Lua Script Error: [TalkAction Interface]
data/talkactions/scripts/saveserver.lua:eek:nSay
data/talkactions/scripts/saveserver.lua:10: attempt to call field 'saveGameState' (a nil value)
stack traceback:
[C]: in function 'saveGameState'
data/talkactions/scripts/saveserver.lua:10: in function <data/talkactions/scripts/saveserver.lua:1>

hi i know its been a longtime but i get this error after doing all you say
 
Back
Top