• 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.77+ - TFS 1.2] The Forgotten [WAR] Server v1.1 (UPDATED 17/12/15)

Michael Orsino

Premium User
Premium User
Support Team
Joined
Nov 15, 2007
Messages
854
Solutions
10
Reaction score
389
Location
Santiago, Chile (Australian)
UPDATES:
22-12-15: VERSION 1.1 PL1 UPLOADED - FIXES MISSING GLOBAL.LUA
17-12-15: VERSION 1.1 IS READY - DOWNLOAD LINKS HAVE BEEN UPDATED.

Live Game Server:
Thanks to Don Daniello and spigu.net we have a live game server. Although the primary purpose of the live server is simply for the enjoyment of the community, it will also be used as a production testing environment.
An advertisement thread will be created shortly and linked at the top of this post, but for now you can find the game server at DOMINADO.ORG.
The website is currently using Znote AAC with the widnet theme converted by Znote and an awful banner created by me. If design is your thing and you want to help out...please start with a banner!
I have not bothered putting this on any server list yet, so don't expect to see players online. I'll sort all that out once I've fixed all the known issues and released the latest update.

---------------

Hi guys,

A few years ago I released Simple War OT for 8.54 through to 8.6. It quickly became the most popular war server being ran and the original very simple map can still be seen used today (usually in a heavily modified state!). The sheer amount of war and noob war servers that came out was awesome and pretty gratifying.
I designed Simple War OT to be simple to use and modify.
Today I am releasing the spiritual successor to Simple War OT - The Forgotten [WAR] Server.

Information:
Server Version:
TFS 1.2
Client Version: 10.77+
Map Version: 10.76
Map: Thais, Venore, Carlin, Edron & Rookgaard (ALL IN REAL TIBIA POSITIONS)

Systems:
- Automatic map rotation (configurable)
- Frag rewards (configurable)
- Player starting skills by vocation (configurable)
- Player starting equipment by vocation (configurable)
- Configure and customise the server all from war_config.lua

Included in download:
config.lua (Set up to suit war server. Feel free to use your own TFS 1.2 config.lua.)
war_config.lua (required, this is where you can customise the war scripts)
data\* (the data folder for the server)

Download:
https://mega.nz/#!1okUTa6T!bYb0u5cT_A1AndiB-9KcVbqYmW_PPl5QrE1t50cYmk8

forgottenserver source: https://github.com/otland/forgottenserver
forgottenserver nightly builds: http://nightlies.otland.net/

Automatic Account Creators:
Miscellaneous:
Credits to Printer for his release layout! I copied it pretty much exactly! Much love s2

Change Log:
V1.1

- GM/GOD characters can now log in
- onLook frags/deaths now works correctly and doesn't interfere with other 'looks'
- Shops/DP added to map with teleporter from each temple
- Original Simple War OT map added to the new map
- Other minor issues fixed
PL1
- Fixed missing global.lua
 

Attachments

  • The Forgotten [WAR] Server v1.1 PL1.zip
    6.3 MB · Views: 332 · VirusTotal
Last edited:
war_config.lua example
Code:
-- The Forgotten [WAR] Server (TFS 1.2 for Tibia 10.77)
-- This server is the successor to The 8.4-8.6 release Simple War OT
-- Credit to Mark Samman & all contributers to The Forgotten Server
-- Credit to Shawak for inspiring this style of configuration
-- Credit to Ninja & Printer for two scripts that I have adapted for the server (individually credited and referenced in the scripts)


    startLevel = 120             -- What level do players start at?
    maximumLevel = 140            -- What is the maximum level players can reach?
    promoteOnLogin = "yes"        -- Should players be promoted on login?
    fullBlessOnLogin = "yes"        -- Should players get full bless on login? This stops them dropping eq.
    enableStartSkills = "yes"        -- Should players start with preset skills (see lists below)
    enableMinimumSkills = "yes"        -- Ensures players do not fall below the skills set in this file
    enableMinimumLevel = "yes"        -- Ensures players do not fall below the minimum level set in this file
    giveFirstItems = "yes"        -- Should new players receive first items? (see lists below)

    potionsInPz = "no"             -- Can players use Potions in PZ?
    potionsRemoveOnUse = "no"        -- Do potions run out?
    changeCoins = "no"             -- Can players change coins? platinum -> gold etc.
    displayStatsOnLogin = "yes"    -- Should stats and minimum skills display each login?

    expMultiplier = 0.015            -- PVP-E Exp multiplier (enemy experience * expMultiplier)
    rewardItem = 2152            -- What is the item ID of the frag reward? (default: 2152 platinum coin)
    rewardCount = 1                -- How many of the above item should the killer receive?

    bonusFragReward = 5            -- How many bonus frag reward kills should each new player receive?
    bonusExpReward = 5            -- How many bonus exp reward kills should each new player receive?
    bonusExpMultiplier = 0.0075    -- How much extra exp should players get? (enemy experience * this value)

-- LOGIN MESSAGES
    newPlayerMessage = "Welcome to The Forgotten WAR Server. As a new player you have been gifted 5 bonus gold & exp frags! This server is the successor to the popular 'Simple War OT' release. Please note that the server is still in BETA testing."
    everyLoginMessage = "Please be aware that this server is still in BETA testing. Report all issues directly to [email protected] - Thank you"

-- MAP CONFIGURATION
    rotateMaps = "yes"            -- Should the map automatically change? Interval set in globalevents.xml (default 30 minutes)
    numberOfMaps = 5            -- Number of maps to rotate between?
    startMap = 1                -- Which map should the server start on?
    mapChangeText = "The map has been changed! Next change in 30 minutes!"

    mapPositions = {
        [1] = {x=32369, y=32241, z=7},
        [2] = {x=32957, y=32076, z=7},
        [3] = {x=32360, y=31782, z=7},
        [4] = {x=33217, y=31814, z=8},
        [5] = {x=32097, y=32219, z=7},
        [6] = {x=1000, y=1000, z=7}
    }

----MINIMUM PLAYER STATS---------------------------------------                           
--ALL PLAYERS--
    minimumLevel = 120
    minimumLevelUp1 = 140

--SORCERER--
    sorcererMagic = 70
    sorcererMagicUp1 = 80

    sorcererShield = 25
    sorcererShieldUp1 = 30

--DRUID--
    druidMagic = 70
    druidMagicUp1 = 80

    druidShield = 25
    druidShieldUp1 = 30

--PALADIN--
    paladinMagic = 20
    paladinMagicUp1 = 25

    paladinShield = 70
    paladinShieldUp1 = 80

    paladinDistance = 95
    paladinDistanceUp1 = 105

--KNIGHT--
    knightMagic = 9
    knightMagicUp1 = 10

    knightShield = 85
    knightShieldUp1 = 95

    knightMelee = 90
    KnightMeleeUp1 = 100

----POTION RESTORE---------------------------------------------
    smhpL = 60    -- Small health potion. These values are the lowest and highest possible restores.
    smhpH = 90 

    hpL = 125    -- Health potion
    hpH = 175

    mpL = 75    -- Mana potion
    mpH = 125

    shpL = 250    -- Strong health potion
    shpH = 350

    smpL = 115    -- Strong mana potion
    smpH = 185

    gsphL = 270    -- Great spirit potion (health)
    gsphH = 330
    gspmL = 130    -- Great spirit potion (mana)
    gspmH = 170

    ghpL = 425    -- Great health potion
    ghpH = 575

    gmpL = 150    -- Great mana potion
    gmpH = 250

    uhpL = 650    -- Ultimate health potion
    uhpH = 850

----FIRST ITEMS------------------------------------------------
commonItems = {
                ---------ALL VOCATIONS---------
  {itemid=1988, count=1},     -- backpack
  {itemid=2120, count=1},     -- rope
  {itemid=5710, count=1},     -- shovel
  {itemid=2420, count=1},     -- machete
  {itemid=2789, count=10},    -- brown mushrooms
  {itemid=2305, count=1},     -- fire bomb rune   
  {itemid=2261, count=1},     -- destroy field rune
}

firstItems = {
               
  {                 ---------SORCERER ITEMS---------
    {itemid=2323, count=1},     -- hat of the mad            
    {itemid=8871, count=1},     -- focus cape                
    {itemid=7730, count=1},     -- blue legs                
    {itemid=2195, count=1},     -- boots of haste            
    {itemid=8902, count=1},     -- spellbook of mind control 
    {itemid=2187, count=1},     -- wand of inferno          
                               
    {itemid=2268, count=1},     -- sd
    {itemid=2273, count=1},     -- uh
    {itemid=7590, count=1},     -- gmp
    {itemid=2293, count=1},     -- mw
  },
  {                 ---------DRUID ITEMS---------
    {itemid=2323, count=1},     -- hat of the mad
    {itemid=8871, count=1},     -- focus cape
    {itemid=7730, count=1},     -- blue legs
    {itemid=2195, count=1},     -- boots of haste
    {itemid=8902, count=1},     -- spellbook of mind control
    {itemid=2183, count=1},     -- hailstorm rod  

    {itemid=2268, count=1},     -- sd
    {itemid=2273, count=1},     -- uh
    {itemid=7590, count=1},     -- gmp
    {itemid=2293, count=1},     -- mw
    {itemid=2269, count=1},     -- wg
    {itemid=2278, count=1},     -- para
  },
  {                 ---------PALADIN ITEMS---------
    {itemid=2493, count=1},     -- demon helmet
    {itemid=8891, count=1},     -- paladin armor
    {itemid=7730, count=1},     -- blue legs
    {itemid=2195, count=1},     -- boots of haste
    {itemid=2514, count=1},     -- mastermind shield
    {itemid=7368, count=1},     -- assassin stars

    {itemid=2268, count=1},     -- sd
    {itemid=2273, count=1},     -- uh
    {itemid=8472, count=1},     -- gsp
    {itemid=7589, count=1},     -- smp
    {itemid=7588, count=1},     -- shp
    {itemid=2293, count=1},     -- mw
  },
  {                 ---------KNIGHT ITEMS---------
    {itemid=2493, count=1},     -- demon helmet
    {itemid=2472, count=1},     -- magic plate armor
    {itemid=2470, count=1},     -- golden legs
    {itemid=2195, count=1},     -- boots of haste
    {itemid=2514, count=1},     -- mastermind shield
    {itemid=2400, count=1},     -- magic sword

    {itemid=7620, count=1},     -- mp
    {itemid=7591, count=1},     -- ghp
    {itemid=8473, count=1},     -- uhp
    {itemid=2273, count=1},     -- uh
    {itemid=2293, count=1},     -- mw
  }
}

-- PLAYER STORAGES
    doubleFragRewardStor = 24021
    extraExpStor = 24022
    minimumLevelUp1Stor = 24023
    sorcererMagicUp1Stor = 24024
    sorcererShieldUp1Stor = 24025
    druidMagicUp1Stor = 24026
    druidShieldUp1Stor = 24027
    paladinMagicUp1Stor = 24028
    paladinShieldUp1Stor = 24029
    paladinDistanceUp1Stor = 24030
    knightMagicUp1Stor = 24031
    knightShieldUp1Stor = 24032
    knightMeleeUp1Stor = 24033
    fragStor = 24034
    deathStor = 24035
-- GLOBAL STORAGES
    currentMap = 34021

I should also add credit for the map to Printer
I have imported the cities from his real map project and sealed them off for use in this war server

Enjoy!
 
Last edited by a moderator:
When i log in any character the console says im loged but in tibia i dont log and the console get pasmed

Nvm problem solved!
 
Last edited by a moderator:
There were no console errors when I released this however TFS 1.2 is still in development and therefore some errors may be encountered as development continues
Any errors that arise should be trivial to fix though
 
There's a problem when you are trying to look at something else than a player. Keep it up!
 
It's a problem in events/player.lua related to the Frag/Death stats.
 
Haha neither of those things surprise me
- I don't use GM/GOD's etc.
- I never tested the server 'in production'

I'll post fixes when I get on break from work if no one else has
To fix the looking at things issue, replace the events/scripts/player.lua with the original TFS (but this will get rid of the frags on look)

As for the on login issue for god characters, I can't check at the moment but there is probably an issue in creaturescripts/scripts/tfws_creaturescripts/war_login.lua
 
Last edited by a moderator:
I believe the problem is indeed in warlogin.lua
Can you please do me a favor and test this theory by removing the following lines, and restarting the server?

remove:
Code:
        if string.lower(promoteOnLogin) ~= "no" then
            if player:getGroup():getId() < 2 then
                player:setVocation(promotion)
            end
        end

I'm not a great lua scripter so i'd have to trial and error until I found the solution
If removing this lets GOD/GM's etc enter the game again, it will be caused by the player:getGroup line
I think this statement needs a return to function correctly

Good luck
 
I believe the problem is indeed in warlogin.lua
Can you please do me a favor and test this theory by removing the following lines, and restarting the server?

remove:
Code:
        if string.lower(promoteOnLogin) ~= "no" then
            if player:getGroup():getId() < 2 then
                player:setVocation(promotion)
            end
        end

I'm not a great lua scripter so i'd have to trial and error until I found the solution
If removing this lets GOD/GM's etc enter the game again, it will be caused by the player:getGroup line
I think this statement needs a return to function correctly

Good luck

Nice, Worked :)
 
I don't know what will happen if you try to promote a GM/GOD character, but you can try it if you want

I've commented out the problem, this will allow all players to log in BUT might cause an error when the script tries to apply promotion to GOD/GM
If you try it, let us know the result =]

Code:
if string.lower(promoteOnLogin) ~= "no" then
--if player:getGroup():getId() < 2 then
player:setVocation(promotion)
--end
end
 
Why i cant save the server with /save?
I added the talkaction from the TFS Master Source but it says a nil value:5 IsNumber

Code:
local savingEvent = 0

function onSay(player, words, param)
    if player:getGroup():getAccess() then
        if isNumber(param) then
            stopEvent(savingEvent)
            save(tonumber(param) * 60 * 1000)
        else
            saveServer()
        end
    end
end

function save(delay)
    saveServer()
    if delay > 0 then
        savingEvent = addEvent(save, delay, delay)
    end
end
 
Why i cant save the server with /save?
I added the talkaction from the TFS Master Source but it says a nil value:5 IsNumber

Code:
local savingEvent = 0

function onSay(player, words, param)
    if player:getGroup():getAccess() then
        if isNumber(param) then
            stopEvent(savingEvent)
            save(tonumber(param) * 60 * 1000)
        else
            saveServer()
        end
    end
end

function save(delay)
    saveServer()
    if delay > 0 then
        savingEvent = addEvent(save, delay, delay)
    end
end
maybe isNumber function is not there idk
 
I don't know where you found that script, it's not in the TFS 1.* github repository (https://github.com/otland/forgottenserver)

I'm at work and can't test anything, but this might be all you need:
Code:
function onSay(player, words, param)
  if player:getGroup():getAccess() then
    saveServer()
  end
return true
end
 
I don't know where you found that script, it's not in the TFS 1.* github repository (otland/forgottenserver)

I'm at work and can't test anything, but this might be all you need:
Code:
function onSay(player, words, param)
  if player:getGroup():getAccess() then
    saveServer()
  end
return true
end

Great! It works :D
Thank you 4 all

Sorry for doublepost, but everytime i log out with any character it gets back from the same position when you log for first time (temple)
 
Last edited by a moderator:
Yes, this is intended behavior
If you are not sent back to the temple then if the map changes you will log in in a different area to the other players
 
I'm glad you like it, I made it purely for the community =]

Fix #1 - Player:eek:nLook (so you can see the frags when you look at players)
This fix should prevent the issue when looking at things other than players.

Again, note that I am at work and cannot test this fix.

Step 1: OPEN /data/events/scripts/player.lua
Step 2: FIND function Player:eek:nLook(thing, position, distance)
Step 3: At the end of this function, a line has been added that looks like "self:sendTextMessage(MESSAGE_INFO_DESCR, "" .. description ~~~ "
Step 4: Surround the above statement with if thing:isCreature() and if thing:isPlayer() then

That should work.


It should now look like this:
Code:
  if thing:isCreature() then
    if thing:isPlayer() then
      self:sendTextMessage(MESSAGE_INFO_DESCR, "" .. description .. " Kills: " .. thing:getStorageValue(fragStor) .. " Deaths: " .. thing:getStorageValue(deathStor) .. "")
    end
  end

the above replaces the single line self:sendTextMessage only.
Everything else around it is retained.
 
Last edited by a moderator:
Back
Top