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

[8.5] The Forgotten Server 0.3.5pl1 (Crying Damson)

Status
Not open for further replies.
MIne was opened for 6 hrs and then the message of save appear and when it saved it crashed why? It crashed from 1-8 Hrs-.-
 
raid dont work :/

i try use raid and dont work

see

00:31 /raid Example
00:31 Could not execute raid. (Raid does not exist or other raid is already running)
example.xml
PHP:
  <?xml version="1.0" encoding="UTF-8" ?> 
- <raid>
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10800" name="Necropharus" x="226" y="175" z="6" /> 
  <effect delay="24000" name="bigclouds" x="226" y="175" z="7" /> 
  <itemspawn delay="25000" id="2195" x="95" y="117" z="6" /> 
  </raid>

----

raids.xml

PHP:
<?xml version="1.0" encoding="UTF-8"?>
<raids>
	<!--
		executed on average once every 2 minutes

		<raid name="Example" file="Example.xml" interval2="2" margin="0" reftype="single" ref="no"/>
			Muhahaha Undeads visit Ricarten - Luck and Search a good Loot

		<raid name="Example2" file="Example.xml" interval2="2" margin="0" reftype="block" ref="no"/>
			will stay as 'running' until Cave Rat gets killed
	-->
</raids>

dont work
 
i try use raid and dont work

see

00:31 /raid Example
00:31 Could not execute raid. (Raid does not exist or other raid is already running)
example.xml
PHP:
  <?xml version="1.0" encoding="UTF-8" ?> 
- <raid>
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10100" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10200" name="Ghoul" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10300" name="mummy" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="Skeleton" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10400" name="vampire" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10500" name="necromancer" x="226" y="175" z="6" /> 
  <singlespawn delay="10800" name="Necropharus" x="226" y="175" z="6" /> 
  <effect delay="24000" name="bigclouds" x="226" y="175" z="7" /> 
  <itemspawn delay="25000" id="2195" x="95" y="117" z="6" /> 
  </raid>

----

raids.xml

PHP:
<?xml version="1.0" encoding="UTF-8"?>
<raids>
	<!--
		executed on average once every 2 minutes

		<raid name="Example" file="Example.xml" interval2="2" margin="0" reftype="single" ref="no"/>
			Muhahaha Undeads visit Ricarten - Luck and Search a good Loot

		<raid name="Example2" file="Example.xml" interval2="2" margin="0" reftype="block" ref="no"/>
			will stay as 'running' until Cave Rat gets killed
	-->
</raids>

dont work

you need to add event example:

Code:
<raid>
<announce delay="0" type="event" message="Something is moving in the depths of the sea around Conglom-o Bay." />
<announce delay="5000" type="event" message="Quara emerged from the sea to attack Conglom-o Bay." />
<announce delay="42500" type="event" message="Unusual numerous Quara fin have been sighted in the seas around Conglom-o Bay." />
<singlespawn delay="60000" name="Thul" x="1029" y="991" z="7" />

<areaspawn delay="42500" fromx="982" fromy="1032" fromz="7" tox="1037" toy="974" toz="7">
<monster name="Quara Constrictor" amount="40" />
<monster name="Quara Hydromancer" amount="35" />
<monster name="Quara Mantassin" amount="30" />
<monster name="Quara Pincher" amount="25" />
<monster name="Quara Predator" amount="15" />
<monster name="Water Elemental" amount="15" />
<monster name="Massive Water Elemental" amount="10" />
<monster name="Water Dragon" amount="5" />
</areaspawn>

</raid>
 
it's loot of bugs :|
quest's not working....
it's trash....
 
Server Down

[Warning - Protocol::RSA_decrypt] Not valid packet size
 
When a player dies it loses the promotion :s
This one is the script ->

function onSay(cid, words, param)

if getPlayerVocation(cid) <= 4 then
if doPlayerRemoveMoney(cid,20000) == TRUE then

doPlayerSetVocation(cid,getPlayerVocation(cid)+4)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You Have been Promoted!")
doSendMagicEffect(getPlayerPosition(cid), 30)

else

doPlayerSendCancel(cid, "You don't have enough money")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

end
else

doPlayerSendCancel(cid, "Your already been promoted")
end
end
 
@fran:

Must be:
Lua:
function onSay(cid, words, param)

if getPlayerPromotionLevel(cid) == 0 then
	if doPlayerRemoveMoney(cid,20000) == TRUE then
		doPlayerSetPromotionLevel(cid, 1)
		doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You Have been Promoted!")
		doSendMagicEffect(getPlayerPosition(cid), 30)
	else
		doPlayerSendCancel(cid, "You don't have enough money")
		doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
	end
else
	doPlayerSendCancel(cid, "You're already promoted")
end
	return TRUE
end
 
Thx xampy Fixed :D

I have another problem, the deaths do not go out in red
Help

1.
Data,creaturescripts,script, playerdeath.lua

PHP:
dofile("./config.lua")
 
function onDeath(cid, corpse, killer)
local killerPos = getCreaturePosition(killer)
    doSendAnimatedText(killerPos, "Noob", TEXTCOLOR_RED)
    for i = 28, 30 do
        doSendMagicEffect(killerPos, i)
    end  
local player = getCreatureName(cid)
local killername = getCreatureName(killer)
 
	doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "You are dead.")
	broadcastMessage(""..killername.." has killed "..player.."!",19)
	if deathListEnabled == "yes" then
		if sqlType == "mysql" then
			env = assert(luasql.mysql())
			con = assert(env:connect(mysqlDatabase, mysqlUser, mysqlPass, mysqlHost, mysqlPort))
		else -- sqlite
			env = assert(luasql.sqlite3())
			con = assert(env:connect(sqliteDatabase))
		end
		local byPlayer = FALSE
		if killer == FALSE then
			killerName = "field item"
		else
			if isPlayer(killer) == TRUE then
				byPlayer = TRUE
			end
			killerName = getCreatureName(killer)
		end
		assert(con:execute("INSERT INTO `player_deaths` (`player_id`, `time`, `level`, `killed_by`, `is_player`) VALUES (" .. getPlayerGUID(cid) .. ", " .. os.time() .. ", " .. getPlayerLevel(cid) .. ", '" .. escapeString(killerName) .. "', " .. byPlayer .. ");"))
		local cursor = assert(con:execute("SELECT `player_id` FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. ";"))
		local deathRecords = numRows(cursor)
		if sqlType == "mysql" then
			while deathRecords > maxDeathRecords do
				delete = assert(con:execute("DELETE FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. " ORDER BY `time` LIMIT 1;"))
				deathRecords = deathRecords - 1
			end
		else
			while deathRecords > maxDeathRecords do
				delete = assert(con:execute("DELETE FROM `player_deaths` WHERE `rowid` = (SELECT `rowid` FROM `player_deaths` WHERE `player_id` = " .. getPlayerGUID(cid) .. " ORDER BY `time` LIMIT 1);"))
				deathRecords = deathRecords - 1
			end
		end			
		con:close()
		env:close()
	end
end

Xml..

PHP:
<event type="onDeath" name="PlayerDeath" event="script" value="PlayerDeath.lua"/>

In Login-
PHP:
-- ### CONFIG ###
-- message send to player by script "type" (types you can check in "global.lua")
SHOP_MSG_TYPE = 27
-- time (in seconds) between connections to SQL database by shop script
SQL_interval = 30
-- ### END OF CONFIG ###
SQL_COMUNICATION_INTERVAL = SQL_interval * 1000
function onLogin(cid)
    if(InitShopComunication == 0) then
        local eventServ = addEvent(sql_communication, SQL_COMUNICATION_INTERVAL, {})
        InitShopComunication = eventServ
    end
    registerCreatureEvent(cid, "PlayerDeath")
	registerCreatureEvent(cid, "DeathBroadcast")
    return TRUE
end

function sql_communication(parameters)
    local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';")
    if(result_plr:getID() ~= -1) then
        while(true) do
            id = tonumber(result_plr:getDataInt("id"))
            action = tostring(result_plr:getDataString("action"))
            delete = tonumber(result_plr:getDataInt("delete_it"))
            cid = getPlayerByName(tostring(result_plr:getDataString("name")))
            if isPlayer(cid) == TRUE then
                if action == 'give_item' then
                    local itemtogive_id = tonumber(result_plr:getDataInt("param1"))
                    local itemtogive_count = tonumber(result_plr:getDataInt("param2"))
                    local container_id = tonumber(result_plr:getDataInt("param3"))
                    local container_count = tonumber(result_plr:getDataInt("param4"))
                    local add_item_type = tostring(result_plr:getDataString("param5"))
                    local add_item_name = tostring(result_plr:getDataString("param6"))
                    local b_head_slot = getPlayerSlotItem(cid, 1)
                    local b_necklace_slot = getPlayerSlotItem(cid, 2)
                    local b_backpack_slot = getPlayerSlotItem(cid, 3)
                    local b_armor_slot = getPlayerSlotItem(cid, 4)
                    local b_right_hand = getPlayerSlotItem(cid, 5)
                    local b_left_hand = getPlayerSlotItem(cid, 6)
                    local b_legs_slot = getPlayerSlotItem(cid, 7)
                    local b_feet_slot = getPlayerSlotItem(cid, 8)
                    local b_ring_slot = getPlayerSlotItem(cid, 9)
                    local b_arrow_slot = getPlayerSlotItem(cid, 10)
                    if b_arrow_slot.itemid == 0 or (b_left_hand.itemid == 0 and b_right_hand.itemid == 0) then
                        local full_weight = 0
                        if add_item_type == 'container' then
                            container_weight = getItemWeightById(container_id, 1)
                            items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count)
                            full_weight = items_weight + container_weight
                        else
                            full_weight = getItemWeightById(itemtogive_id, itemtogive_count)
                        end
                        local free_cap = getPlayerFreeCap(cid)
                        if full_weight <= free_cap then
                            if add_item_type == 'container' then
                                local new_container = doCreateItemEx(container_id)
                                local iter = 0
                                while iter ~= container_count do
                                    doAddContainerItem(new_container, itemtogive_id, itemtogive_count)
                                    iter = iter + 1
                                end
                                doPlayerAddItemEx(cid, new_container)
                                itemtogive_id = container_id
                            else
                                local addeditem = doPlayerAddItem(cid, itemtogive_id, itemtogive_count)
                            end
                            local head_slot = getPlayerSlotItem(cid, 1)
                            local necklace_slot = getPlayerSlotItem(cid, 2)
                            local backpack_slot = getPlayerSlotItem(cid, 3)
                            local armor_slot = getPlayerSlotItem(cid, 4)
                            local right_hand = getPlayerSlotItem(cid, 5)
                            local left_hand = getPlayerSlotItem(cid, 6)
                            local legs_slot = getPlayerSlotItem(cid, 7)
                            local feet_slot = getPlayerSlotItem(cid, 8)
                            local ring_slot = getPlayerSlotItem(cid, 9)
                            local arrow_slot = getPlayerSlotItem(cid, 10)
                            if ring_slot.itemid == itemtogive_id or feet_slot.itemid == itemtogive_id or legs_slot.itemid == itemtogive_id or armor_slot.itemid == itemtogive_id or necklace_slot.itemid == itemtogive_id or head_slot.itemid == itemtogive_id or arrow_slot.itemid == itemtogive_id or left_hand.itemid == itemtogive_id or right_hand.itemid == itemtogive_id or backpack_slot.itemid == itemtogive_id then
                                if b_ring_slot.uid ~= ring_slot.uid or b_feet_slot.uid ~= feet_slot.uid or b_legs_slot.uid ~= legs_slot.uid or b_armor_slot.uid ~= armor_slot.uid or b_necklace_slot.uid ~= necklace_slot.uid or b_head_slot.uid ~= head_slot.uid or b_backpack_slot.uid ~= backpack_slot.uid or b_right_hand.uid ~= right_hand.uid or b_left_hand.uid ~= left_hand.uid or b_arrow_slot.uid ~= arrow_slot.uid then
                                doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop. You should re-login now to become sure your new item will not disappear if any error occur.')
                                db.executeQuery("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
                                db.executeQuery("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";")
                                else
                                    doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop not added. Unknown error occured. Wait about '.. SQL_interval ..' seconds. If error will occur again contact with admin. Error item ID is: '.. id ..'')
                                end
                            else
                                doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop not added. Unknown error occured. Wait about '.. SQL_interval ..' seconds. If error will occur again contact with admin. Error item ID is: '.. id ..'')
                            end
                        else
                            doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot or give to friend and wait about '.. SQL_interval ..' seconds to get it.')
                        end
                        
                        
                    else
                        doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please take items from both hands or item from arrow slot and wait about '.. SQL_interval ..' seconds to get it.')
                    end
                end
            end
            if not(result_plr:next()) then
                break
            end
        end
        result_plr:free()
    end
    local eventServ = addEvent(sql_communication, SQL_COMUNICATION_INTERVAL, parameters)
end

Help!! :S
 
lol
hail noobs :s
friend, ctrl + F: Download.
see
Download:
cryingdamson5-gui.7z (1.94 MB)
cryingdamson5-console.7z (1.93 MB)
 
As I try to test the game server connections crashbug and patch rest of boost_thread support (half done), will release 0.3.5pl2 with /LARGEADDRESSAWARE which increases the memory limit from 2 to 3GB.
 
Status
Not open for further replies.
Back
Top