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

Forgotten Server Crashes after summoning creature

Jaki Maoh

Member
Joined
Sep 13, 2017
Messages
52
Reaction score
11
Hello everyone!

Recently I came back to the OTS life, and am following some tutorials about hosting my own server at home. I've followed @Don Daniello's quick guide on how to setup and host the latest TFS on a new machine.

Ubuntu is a distribution based on Debian so if you are familiar with Debian, you will know how to use Ubuntu too.
This is the simplest guide how to configure your dedicated server ever. It cannot be simpler :)

You need a recent Ubuntu version (16.04 minimum). It also makes TFS compilation with LuaJIT possible.
Current latest supported (tested) version of Ubuntu is 18.04 - use this version if you can.

This must be a fresh-install, bare system. If you attempted to install anything on it before, reinstall the OS first.

Log in as root and execute:
Bash:
apt update
apt install -y -q python-paramiko python-yaml python-jinja2 python-simplejson git-core ansible aptitude
ansible-pull -i localhost, -U https://github.com/DevelopersPL/otshosting-provisioning.git -d /srv/otshosting-provisioning

Now log in as "otsmanager" (default password: "otsmanager") and change your password (passwd command). You will see instructions how to use your server after you log in.

We also have a detailed documentation for you on how to use your server: Home · DevelopersPL/otshosting-provisioning Wiki · GitHub

Hint: To update, you can run the last command (ansible-pull...) over and over again, even through cron, to make sure you have latest updates for your system and use our newest provisioning scripts.

This will:
  • Create a system user "otsmanager" with password "otsmanager"
  • Install required packages
  • Install and configure MySQL server with daily backups in /var/lib/automysqlbackup
  • Install phpMyAdmin to run at https://yourip/pma3380
  • Install nginx webserver with PHP5-FPM support. Put your web files in /home/otsmanager/www/public_html
  • Download and compile tfs source into /home/otsmanager/forgottenserver
  • Install auto-restarter and auto-start utility for TFS
  • Create "forgottenserver" database on MySQL server, generate random password and set it in config.lua
  • Import forgottenserver.sql schema into forgottenserver database
  • Install DevAAC. It does not modify your database so if you don't want to use it, just delete contents of /home/otsmanager/www

The whole procedure is tested, safe and secure. If you want to know how it works, check out Ansible is Simple IT Automation and GitHub - DevelopersPL/otshosting-provisioning: Ansible playbook for provisioning of OTS Hosting Ubuntu 15.04+ box.

This is how we install the OTS Hosting Service I am offering. I do not provide direct support or help with using this method. You are only guaranteed support if you purchase my hosting service. It's probably the cheapest way to host your server 24/7 for ~20 EUR / month with DDoS protection.

Feel free to post questions in this thread and issues to the GitHub repository.

After the end of the instalations, the server is online, with minor errors on the log (maybe some questions for another time) and nothing major as an issue.
Unfortunetally, after some testings, I found out that for whatever reason, the server crashes everytime someone summons any creature. I could not for the life of me find out why. I've redone the tutorial from scratch two times and the error persists. I believe that the server is up to date with the master files over at GitHub repository: otland/forgottenserver (https://github.com/otland/forgottenserver). Can anyone be of any help with this issue?

here's the error that I see in the Server Log, after the server crashes:
Lua:
mai 02 11:16:19 pchost tfs[3329]: >> Forgotten Server Online!
mai 02 11:16:19 pchost tfs[3329]: Batpa has logged in.
mai 02 11:16:56 pchost tfs[3329]: tfs: /home/otsmanager/forgottenserver/src/monster.cpp:324: void Monster::addTarget(Creature*, bool): Assertion `creature != this' failed.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Main process exited, code=killed, status=6/ABRT
mai 02 11:16:57 pchost systemd[815]: tfs.service: Failed with result 'signal'.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Service hold-off time over, scheduling restart.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Scheduled restart job, restart counter is at 3.
mai 02 11:16:57 pchost systemd[815]: Stopped The Forgotten Server.
mai 02 11:16:57 pchost systemd[815]: Started The Forgotten Server.
mai 02 11:16:57 pchost tfs[3371]: The Forgotten Server - Version 1.3
mai 02 11:16:57 pchost tfs[3371]: Compiled with GNU C++ version 7.5.0
mai 02 11:16:57 pchost tfs[3371]: Compiled on May  2 2020 10:09:10 for platform x64
mai 02 11:16:57 pchost tfs[3371]: A server developed by Mark Samman
mai 02 11:16:57 pchost tfs[3371]: Visit our forum for updates, support, and resources: http://otland.net/.

Thanks in advance!
Jaki
 
Solution
Hello Jaki,

Thank you for you report.

It seems like you have the latest TFS version which is currently in development.

You can expect minor bugs, that's why we have devs working hard on fixing it.

I can confirm this issue is related to GitHub Pull Request

When you have some spare time, could you look into this @Nekiro

Thanks
This crash only happen if you compile server in debug mode so that's probably why Nekiro didn't encounter that.

Simply fix is to change in data/lib/core/position.lua function Position:notifySummonAppear
from:
Lua:
function Position:notifySummonAppear(summon)
    local spectators = Game.getSpectators(self)
    for _, spectator in ipairs(spectators) do
        if spectator:isMonster()...
Hello everyone!

Recently I came back to the OTS life, and am following some tutorials about hosting my own server at home. I've followed @Don Daniello's quick guide on how to setup and host the latest TFS on a new machine.



After the end of the instalations, the server is online, with minor errors on the log (maybe some questions for another time) and nothing major as an issue.
Unfortunetally, after some testings, I found out that for whatever reason, the server crashes everytime someone summons any creature. I could not for the life of me find out why. I've redone the tutorial from scratch two times and the error persists. I believe that the server is up to date with the master files over at GitHub repository: otland/forgottenserver (https://github.com/otland/forgottenserver). Can anyone be of any help with this issue?

here's the error that I see in the Server Log, after the server crashes:
Lua:
mai 02 11:16:19 pchost tfs[3329]: >> Forgotten Server Online!
mai 02 11:16:19 pchost tfs[3329]: Batpa has logged in.
mai 02 11:16:56 pchost tfs[3329]: tfs: /home/otsmanager/forgottenserver/src/monster.cpp:324: void Monster::addTarget(Creature*, bool): Assertion `creature != this' failed.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Main process exited, code=killed, status=6/ABRT
mai 02 11:16:57 pchost systemd[815]: tfs.service: Failed with result 'signal'.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Service hold-off time over, scheduling restart.
mai 02 11:16:57 pchost systemd[815]: tfs.service: Scheduled restart job, restart counter is at 3.
mai 02 11:16:57 pchost systemd[815]: Stopped The Forgotten Server.
mai 02 11:16:57 pchost systemd[815]: Started The Forgotten Server.
mai 02 11:16:57 pchost tfs[3371]: The Forgotten Server - Version 1.3
mai 02 11:16:57 pchost tfs[3371]: Compiled with GNU C++ version 7.5.0
mai 02 11:16:57 pchost tfs[3371]: Compiled on May  2 2020 10:09:10 for platform x64
mai 02 11:16:57 pchost tfs[3371]: A server developed by Mark Samman
mai 02 11:16:57 pchost tfs[3371]: Visit our forum for updates, support, and resources: http://otland.net/.

Thanks in advance!
Jaki

Hello Jaki,

Thank you for you report.

It seems like you have the latest TFS version which is currently in development.

You can expect minor bugs, that's why we have devs working hard on fixing it.

I can confirm this issue is related to GitHub Pull Request

When you have some spare time, could you look into this @Nekiro

Thanks
 
Hello Jaki,

Thank you for you report.

It seems like you have the latest TFS version which is currently in development.

You can expect minor bugs, that's why we have devs working hard on fixing it.

I can confirm this issue is related to GitHub Pull Request

When you have some spare time, could you look into this @Nekiro

Thanks
This crash only happen if you compile server in debug mode so that's probably why Nekiro didn't encounter that.

Simply fix is to change in data/lib/core/position.lua function Position:notifySummonAppear
from:
Lua:
function Position:notifySummonAppear(summon)
    local spectators = Game.getSpectators(self)
    for _, spectator in ipairs(spectators) do
        if spectator:isMonster() then
            spectator:addTarget(summon)
        end
    end
end
to:
Lua:
function Position:notifySummonAppear(summon)
    local spectators = Game.getSpectators(self)
    for _, spectator in ipairs(spectators) do
        if spectator:isMonster() and spectator ~= summon then
            spectator:addTarget(summon)
        end
    end
end
 
Solution
This crash only happen if you compile server in debug mode so that's probably why Nekiro didn't encounter that.

Simply fix is to change in data/lib/core/position.lua function Position:notifySummonAppear
from:
Lua:
function Position:notifySummonAppear(summon)
    local spectators = Game.getSpectators(self)
    for _, spectator in ipairs(spectators) do
        if spectator:isMonster() then
            spectator:addTarget(summon)
        end
    end
end
to:
Lua:
function Position:notifySummonAppear(summon)
    local spectators = Game.getSpectators(self)
    for _, spectator in ipairs(spectators) do
        if spectator:isMonster() and spectator ~= summon then
            spectator:addTarget(summon)
        end
    end
end

1588622866039.png
@fabian766 the rats are thanking you, the project must go on!

Thank you everyone!
Issue is solved
Jaki
 
Back
Top