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

Implementing Google Firebase into a server.... Is this a good idea?

No need for 10 bots, just one with a big stock of items. Found the thread: Server lags when login/logout with a lot of items - time to fix it! (https://otland.net/threads/server-lags-when-login-logout-with-a-lot-of-items-time-to-fix-it.266112/#post-2572247)
As you can see, 168k items caused the server to lag for 4-5 seconds. There was an attempt to optimize it by caching and using binary format, though prolly not finished and not implemented into tfs. And still wouldn't get rid of the core issue, cause even with 100 ms delay you can make the game unplayable by constantly logging in and out.
That's what i meant, i think Ezzz wrote it in some thread i don't remember but if i'm not wrong, cipsoft did like this:

Load players into memory -> Unload players into a swap file after some time without logging in. -> If a player attempts to login and swap file exists, load the player info from this file.
In addition that cipsoft like you said, had the database in another machine, correct me if i'm wrong.
 
Load players into memory -> Unload players into a swap file after some time without logging in. -> If a player attempts to login and swap file exists, load the player info from this file.

Oh that's interesting. That would explain why that cipsoft leak had entire folders full of account and player data files.

Always thought it odd that a big company like them used local store files rather than a database. But I always chalked it down to inexperience and legacy server design from 1997 where electronic databases was more an enterprise thing.
 
Oh that's interesting. That would explain why that cipsoft leak had entire folders full of account and player data files.

Always thought it odd that a big company like them used local store files rather than a database. But I always chalked it down to inexperience and legacy server design from 1997 where electronic databases was more an enterprise thing.
There were no account files. Accounts were stored in the database, they only kept game server-specific data locally in files. They had those character files (.usr) which were loaded/created on first login, then kept in RAM and saved periodically. But again, those files aren't the main point here. Most of all, they made proper use of pthreads.

They obviously knew what they were doing, it's rather ots devs who are inexperienced in this comparison. I mean their server from 2006 was way lighter, faster and safer than tfs will ever be. It's tfs that has core issues at its base, like running queries inside the game loop. Cip dealt with those things in the 90's, while tfs devs probably won't touch them for the next 20 years.

Btw they were not a big company. Not even a company until 2001.
 
Last edited:
There were no account files. Accounts were stored in the database, they only kept game server-specific data locally in files. They had those character files (.usr) which were loaded/created on first login, then kept in RAM and saved periodically. But again, those files aren't the main point here. Most of all, they made proper use of pthreads.

They obviously knew what they were doing, it's rather ots devs who are inexperienced in this comparison. I mean their server from 2006 was way lighter, faster and safer than tfs will ever be. It's tfs that has core issues at its base, like running queries inside the game loop. Cip dealt with those things in the 90's, while tfs devs probably won't touch them for the next 20 years.

Btw they were not a big company. Not even a company until 2001.
Not sure who you refer to by saying tfs devs, but tfs core code wasn't touched in probably longer than I'm on this forum, I agree with you it will probably never change, because as you can see there is not much interest in doing so, nor is it easy to do.
Unless your whole message was just saying I'm (and tfs devs) inexperienced and there is a easy way to implement that? If so, I would be more than happy to see what you mean.
 
There were no account files. Accounts were stored in the database, they only kept game server-specific data locally in files. They had those character files (.usr) which were loaded/created on first login, then kept in RAM and saved periodically. But again, those files aren't the main point here. Most of all, they made proper use of pthreads.

They obviously knew what they were doing, it's rather ots devs who are inexperienced in this comparison. I mean their server from 2006 was way lighter, faster and safer than tfs will ever be. It's tfs that has core issues at its base, like running queries inside the game loop. Cip dealt with those things in the 90's, while tfs devs probably won't touch them for the next 20 years.

Btw they were not a big company. Not even a company until 2001.
Comparing a profitable company to a non-profit open-source organization.
Interesting argument.
 
Comparing a profitable company to a non-profit open-source organization.
Interesting argument.
Premium accounts were introduced back in 2001, the game development started in 1995 so no, they worked as a non-profit organization during their university phase until 2001, and even in 2002 they still were only 4 employees lol.
But anyway, it was in c golden era with very poor hardware, it's normal they used every resource at the best, nowadays with high level programming on demand and the quality of hardware we got nowadays, it's very hard to find a good low level programmer commited to get the best of the resources avalaibles on a open source community, where all your work can be taken for free for anyone, improve it and earn $$ out of your valuable work, like we saw here with edubart and otclientv8.
 
Comparing a profitable company to a non-profit open-source organization.
Interesting argument.
If you'd read carefully I was only replying to a comment about how inexperienced cip must have been (for doing things differently than OT servers do). The truth is that we could learn a lot from them, but for some reason here in otland there's a widespread belief that cip server was shit and they were noobs. :rolleyes:
By the way, have you considered that the "profitable company" software we're comparing here it's a version at least 16 years older than the latest tfs release? Or that they weren't even a profitable company until 2003 and wouldn't have become one if they hadn't made it in the first place?
Not to mention that properly managed open source projects can be (and often are) in many terms better than commercial ones, especially speaking about modern clones of ancient programs.

Not sure who you refer to by saying tfs devs, but tfs core code wasn't touched in probably longer than I'm on this forum, I agree with you it will probably never change, because as you can see there is not much interest in doing so, nor is it easy to do.
Unless your whole message was just saying I'm (and tfs devs) inexperienced and there is a easy way to implement that? If so, I would be more than happy to see what you mean.
You mean you (tfs devs) are not interested?
I never said it was easy, but who even said that developing has to be easy? And you're a developer, aren't you? Inb4 "you can contribute and do it yourself!" - sure, but then again, you don't even seem interested in reviewing and possibly accepting it (and to remind: we're talking about core issues). Pretty much as Gesior said, but your post confirms it even more.
 
Last edited:
I am happy that there is a large response of interest. But the discussion has drifted a little on the side lines. Let's just get back to the topic for a second. I realized that cloud hosting doesn't make sense for OpenTibia but maybe there are some cool ideas where Firebase could help the server? Maybe firebase could somehow cooperate with "Accout Maker Website", e.g. send some pushes, notifications, text messages to your phone about interesting events on the server you play on.
 
I am happy that there is a large response of interest. But the discussion has drifted a little on the side lines. Let's just get back to the topic for a second. I realized that cloud hosting doesn't make sense for OpenTibia but maybe there are some cool ideas where Firebase could help the server? Maybe firebase could somehow cooperate with "Accout Maker Website", e.g. send some pushes, notifications, text messages to your phone about interesting events on the server you play on.

Firebase would add nothing to running a Tibia server that isn't already there, or could be added yourself for free and without requiring lengthy third party data sharing disclosure contracts between you and your users.

It was designed around mobile apps wanting to offer community experiences and mobile games wanting to offer limited online functionality and device-independent player data storage, without having to invest in the required infrastructure.
 
Back
Top