Gibt ja so wenig user dort..
Wenn die Objekte und die Rates nicht verändert werden geht der Server down.
Ich hab 2Minuten Gespielt bin Level 15 und hab gradma 800 Penya gedroppt.
Gibt ja so wenig user dort..
Wenn die Objekte und die Rates nicht verändert werden geht der Server down.
Ich hab 2Minuten Gespielt bin Level 15 und hab gradma 800 Penya gedroppt.
70 Euro + 50 Euro Setup ist für den Root eigentlich zu teuer..
Es gibt Roots die kosten im Monat 70 Euro ohne Setup Gebühr..
(12 Monate)
ZitatEinrichtung für 30 Euro
Also das Zeug auf dem HTDOCS Ordner packen und die Config ausfüllen..
Das ist keine 30 Euro wert..
Zudem ist das Passwort sichtbar beim ausfüllen.
ZitatFind ich Okey, dann haben Jester auch wieder ne Chance dmg zu Hauen =)
Mhh.. ein BJ mit einem LG Bow +10 macht schon mit guten Equip 20k DMG pro Pfeil.
Das sind 40k mit Link Attack..
Mit Ultimate Bows wären das ja bis zu 80k pro Schuss? Die Blades gehen unter..
59 Euro Monatlich bei Server4You.
=> Setup Gebühren müssen bezahlt werden wenn man nur 1 Monat Mietet.
69 Euro bei WebTropia
=> Keine Setup Gebühren
Dann schickt mal eine Seite wo man viel RAM für wenig Geld bekommt
- Keine Setup Gebühren
- Maximal 3 Monats Vertrag
Server4You hat 99.- Setup Gebühren.
Entfällt bei 12 Monate..
EDIT:
Hab bei Webtropia einen gefunden:
4x 1.8 GHZ
6 GB Ram
70 Euro Monatlich
Kein Setup
Sollten reichen für 500-750 :)
Das sind zwar 10 Euro mehr als bei S4Y (Gleiche Root Geschwindigkeit) aber dafür gibt es keine 99Euro Einrichtungsgebühr bei 1-6 Monatsvertrag.
Soll kein ordentlicher Server werden vorerst.
1 Monat einmalig 49.-€
Wenn der Server gut läuft und der Root zu schlecht wird dann
ein neuen besseren Root bestellen und..
Wollt nur wissen, ob der Root reicht für ~50 Spieler
Hab ein Root mit 1GB Ram, der packt aber nicht den World Server zu starten :)
Reicht dieser Root für V14 Flyff Files?
AMD Athlon 64 3700+
von Hetzner.de.
Oder kennt jemand andere Roots wo nicht über 60 Euro monatlich Kosten und KEINE Setup gebühren anfallen..
Wenn möglich Maximal 3 Monate Vertrags dauer..
Hab eine DataSub und Server Datei
angefertigt für ein Server. Der Server
brauch diese nun Nichtmehr und jeder
hat das Recht, die Dateien zu haben und zu führen.
DataSub, Neuz und Starter.bat
propSkillAdd.csv (In den Resource Ordner der Server Files überschreiben)
Was ist enthalten?
- Critical Punch: Patience wurde zu Critical Punch mit 12% Kritrate
- Ranger Master Skill gibt nun zusätzlich 50% Kritrate
- Swordcross vom Knight auf 20% erhöht
- Deutsche DataSubs
- Verschiedene Skills verbesset und verschlechtert wie zB Pan Barrier nurnoch 20% Pfeil Block
- HeapUp gibt nurnoch 30STA statt 40. Dafür gibt BeefUp, MentalSign und CannonBall 30 Status Punkte statt 20.
Credits:
- Orakel
- Serus für die Neuz
- dFlyff für die DataSubs
#Updates
- Ranger Master Skill gibt nun zusätzlich 50% Kritrate.
- Mercenary Skill Pan Barrier gibt nurnoch 20% Pfeil Block statt 40%.
ZitatGuide:
$eingabe = trim(htmlspecialchars($eingabe))
Guide Ende
FAIL!
Begrenze den Input zusätzlich mit MAXLENGHT
und dann zusätzlich mit PHP da man den Input leicht umgehn kann.
Am besten 8 Zeichen bei ID und 16 bei PW!
ja wie alle free projekte..
Der Admin davon antwortet nichtmehr und lässt es absinken :)
Hab das Script genommen, leider kann man dort viele SQL Injections Posten.
Habs umgebaut mit PHP und INPUT :D
:facepalm:
Nur weil Idioten kein Server Online bringen können oder kein Geld für ein Root haben, müssen die anderen Server drunter Leiden..
Ich Release vlt bald ein Guide wie man das Fixxt obwohl es auch nur einpaar EINFACHE PHP Zeilen sind...
ZitatWas würde wohl passieren, wenn es jeder vergisst. Ohne Verwarnungspunkte würde keiner die Regeln beachten bzw. lesen.
Tja dann müssen alle Mitglieder gesperrt werden und das Forum down gehn :)
btw kannte es schon, kreigst thx :D
Also habe alle 127.0.0.1 ersetzt durch die Hamachi IP.
Funzt alles OHNE Probleme :)
ZitatAlles anzeigentEvent = {} -- ??? ?? ???
tNotice = {} -- ?? ?? ??
bNotice = falsefunction SEC( n )
return n*1000
endfunction MIN( n )
return n*SEC(60)
end-----------------------------------------------------------------------------------
function Notice( strTime, nInterval, nNoticeCount )
tNotice.strTime = strTime
tNotice.nInterval = nInterval
tNotice.nNoticeCount = nNoticeCount
tNotice.tMessage = {}
endfunction AddMessage( strMessage )
local nSize = table.getn( tNotice.tMessage ) + 1
tNotice.tMessage[nSize] = strMessage
endfunction IsNoticeTime()
if( (bNotice == true) and (tNotice.nNoticeCount > 0) and (tNotice.strTime == os.date("%a %H:%M")) ) then
tNotice.nNoticeCount = tNotice.nNoticeCount - 1
SetNextNoticeTime()
return true
end
return false
endfunction SetNextNoticeTime()
local nMin = tonumber( os.date( "%M" ) )
local nHour = tonumber( os.date( "%H" ) )
local strTemp;tNotice.strTime = os.date( "%a " )
nMin = nMin + tNotice.nInterval;
if( nMin > 59 ) then
nMin = 60 - nMin
nHour = nHour + 1
end
-- ?
strTemp = tostring( nHour )..":"
if( nHour < 10 ) then strTemp = "0"..strTemp end
tNotice.strTime = tNotice.strTime .. strTemp
-- ?
strTemp = tostring( nMin )
if( nMin < 10 ) then strTemp = "0"..strTemp end
tNotice.strTime = tNotice.strTime .. strTemp
endfunction GetNoticeMessage()
return tNotice.tMessage
end-----------------------------------------------------------------------------------
------- C?? ??? ?? ?? ----------------------------------------------------
-----------------------------------------------------------------------------------
-- ??? ??? ??? (DBSERVER)
function GetEventState()
local tReturn = {}
local nCount = 0
for i in pairs(tEvent) do
local OldState = tEvent[i].State
for j in pairs(tEvent[i].Time) do
if( tEvent[i].Time[j].nStart <= tonumber(os.date("%Y%m%d%H%M")) ) then
if( tEvent[i].Time[j].nEnd > tonumber(os.date("%Y%m%d%H%M")) ) then
if( tEvent[i].State == 0 ) then
tEvent[i].State = 1
end
else
if( tEvent[i].State == 1 ) then
tEvent[i].State = 0
end
end
end
end
if( OldState ~= tEvent[i].State ) then
tReturn[nCount] = {}
tReturn[nCount].nId = i
tReturn[nCount].State = tEvent[i].State
nCount = nCount + 1
end
endreturn tReturn
end-- WORLDSERVER?? ??? ???? ???? ??? state? ???? ?? ??
function SetState( nId, nState )
if( tEvent[nId] == nil ) then
TRACE( string.format( "Pas d'evenement ayant l'id : %d", nId ) )
ERROR( string.format( "Pas d'evenement ayant l'id : %d", nId ) )
return false;
end
tEvent[nId].State = nState
TRACE( string.format( "ID de l'evenement : %d, Nom : %s, Etat : %d", nId, tEvent[nId].Desc, tEvent[nId].State ) )
ERROR( string.format( "ID de l'evenement : %d, Nom : %s, Etat : %d", nId, tEvent[nId].Desc, tEvent[nId].State ) )
return true;
end-- ???? ??? ???
function GetEventList()
local tList = {}
local nCount = 1
for i in pairs(tEvent) do
if( tEvent[i].State == 1 ) then
tList[nCount] = i
nCount = nCount + 1
end
end
return tList
end-- ??? ???? ?? ?? ???
function GetAllEventList()
local tAllList = {}
local nCount = 1
for i in pairs(tEvent) do
tAllList[nCount] = {}
tAllList[nCount].nId = i
tAllList[nCount].strTitle = tEvent[i].Desc
tAllList[nCount].nState = tEvent[i].State
nCount = nCount + 1
end
return tAllList
end-- ??? ?? ?? ???? ??
function GetEventInfo( nId )
local tEventInfo = {}
if( tEvent[nId] == nil ) then
tEventInfo[1] = "Pas d'infos sur l'evenement ayant l'id : "..nId
return tEventInfo
end
local nCount = 3
tEventInfo[1] = "Nom = " .. tEvent[nId].Desc
tEventInfo[2] = "Etat = " .. tEvent[nId].State
for i in pairs(tEvent[nId].Time) do
local strTime = tEvent[nId].Time[i].nStart .. ", " ..tEvent[nId].Time[i].nEnd
tEventInfo[nCount] = "Time["..i.."] = " .. strTime
nCount = nCount + 1
endfor i in pairs(tEvent[nId].Item) do
local strItem = tEvent[nId].Item[i].ItemId ..", ".. tEvent[nId].Item[i].ItemMaxNum ..", ".. tEvent[nId].Item[i].ItemNum ..", ".. tEvent[nId].Item[i].nLevel
tEventInfo[nCount] = "Objet["..i.."] = " .. strItem
nCount = nCount + 1
end
if( tEvent[nId].fExpFactor ~= 5 ) then
tEventInfo[nCount] = "Experience multiplie par : " .. tEvent[nId].fExpFactor
nCount = nCount + 1
end
if( tEvent[nId].fItemDropRate ~= 5 ) then
tEventInfo[nCount] = "Drop multiplie par : " .. tEvent[nId].fItemDropRate
nCount = nCount + 1
end
if( tEvent[nId].fPieceItemDropRate ~= 5 ) then
tEventInfo[nCount] = "Nombre d'objets multiplie par : " .. tEvent[nId].fPieceItemDropRate
nCount = nCount + 1
end
if( tEvent[nId].fGoldDropFactor ~= 5 ) then
tEventInfo[nCount] = "Penyas multiplie par : " .. tEvent[nId].fGoldDropFactor
nCount = nCount + 1
end
if( tEvent[nId].nAttackPower ~= 0 ) then
tEventInfo[nCount] = "Attaque augmentee de : " .. tEvent[nId].nAttackPower
nCount = nCount + 1
end
if( tEvent[nId].nDefensePower ~= 0 ) then
tEventInfo[nCount] = "Defense augmentee de : " .. tEvent[nId].nDefensePower
nCount = nCount + 1
end
if( tEvent[nId].nCouponEvent ~= 0 ) then
if( tEvent[nId].nCouponEvent < MIN(1) ) then
tEventInfo[nCount] = "Duree des coupons evenement : " .. tEvent[nId].nCouponEvent / SEC(1) .. "Secondes"
else
tEventInfo[nCount] = "Duree des coupons evenement : " .. tEvent[nId].nCouponEvent / MIN(1) .. "Minutes"
end
nCount = nCount + 1
end
for i in pairs(tEvent[nId].Gift) do
local strGift = tEvent[nId].Gift[i].nLevel ..", ".. tEvent[nId].Gift[i].strAccount ..", ".. tEvent[nId].Gift[i].strItemId ..", ".. tEvent[nId].Gift[i].nItemNum
tEventInfo[nCount] = "Cadeaux n¡Æ["..i.."] : " .. strGift
nCount = nCount + 1
end
if( tEvent[nId].fCheerExpFactor ~= 1 ) then
tEventInfo[nCount] = "fCheerExpFactor = " .. tEvent[nId].fCheerExpFactor
nCount = nCount + 1
end
return tEventInfo
end-- ??? ??
function GetDesc( nId )
local strDesc = tEvent[nId].Desc
return strDesc
end-- ??? ??? ???? ??
function GetTimeToNumber( strTime )
local strTemp = ""
local j = 0
for i in string.gfind( strTime, "%d+" ) do
j = j + 1
if( (j~=1) and (tonumber(i)<10) ) then
i = "0"..tonumber(i)
end
strTemp = strTemp..i
end
return tonumber( strTemp )
end---------------------------------------------------------------------------
------ ??? ?? ?? ---------------------------------------------------
----------------------------------------------------------------------------- ??? ??? ??
function AddEvent( strDesc )
local nEventId = table.getn(tEvent) + 1
tEvent[nEventId] = {}
tEvent[nEventId].Item = {}
tEvent[nEventId].Time = {}
tEvent[nEventId].Desc = strDesc
tEvent[nEventId].fExpFactor = 1
tEvent[nEventId].fItemDropRate = 1
tEvent[nEventId].fPieceItemDropRate = 1
tEvent[nEventId].fGoldDropFactor = 1
tEvent[nEventId].State = 0
tEvent[nEventId].nAttackPower = 0
tEvent[nEventId].nDefensePower = 0
tEvent[nEventId].nCouponEvent = 0
tEvent[nEventId].Gift = {}
tEvent[nEventId].fCheerExpFactor = 1
end-- ????, ???
function SetTime( strStart, strEnd )
local nEventId = table.getn(tEvent)
local nSize = table.getn( tEvent[nEventId].Time ) + 1
tEvent[nEventId].Time[nSize] = {}
tEvent[nEventId].Time[nSize].nStart = GetTimeToNumber( strStart )
tEvent[nEventId].Time[nSize].nEnd = GetTimeToNumber( strEnd )
end-- ???
function SetItem( ItemId, nItemMaxNum, nItemNum, nLevel )
local nEventId = table.getn(tEvent)
local nSize = table.getn(tEvent[nEventId].Item)
tEvent[nEventId].Item[nSize+1] = {}
tEvent[nEventId].Item[nSize+1].ItemId = ItemId
tEvent[nEventId].Item[nSize+1].ItemMaxNum = nItemMaxNum
tEvent[nEventId].Item[nSize+1].ItemNum = nItemNum
tEvent[nEventId].Item[nSize+1].nLevel = nLevel
tEvent[nEventId].Item[nSize+1].TimeOut = 0
tEvent[nEventId].Item[nSize+1].Skip = 0
local tInterval = {}
local nTotal = 0
for i in pairs(tHour) do
nTotal = nTotal + tHour[i]
end
for i in pairs(tHour) do
tInterval[i] = 3600000 / ( nItemMaxNum * tHour[i] / nTotal )
tInterval[i] = math.floor(tInterval[i])
end
tEvent[nEventId].Item[nSize+1].tInterval = tInterval
end-- ??? ??? ??
function GetItem( nTickCount, nLevel )
local nHour = tonumber(os.date("%H")) + 1
local tList = GetEventList()
local tReturn = {}
local nCount = 1
for i in pairs(tList) do
local tItem = tEvent[tList[i]].Item
for j in pairs(tItem) do
local nRandom = math.random(0, tItem[j].ItemNum)
if( (nRandom > 0) and (nTickCount >= tItem[j].TimeOut) and (tItem[j].nLevel <= nLevel) ) then
tItem[j].TimeOut = tItem[j].tInterval[nHour] + nTickCount
if( tItem[j].Skip == 0 ) then
tReturn[nCount] = {}
tReturn[nCount].ItemId = tItem[j].ItemId
tReturn[nCount].ItemNum = nRandom
tItem[j].Skip = nRandom - 1
nCount = nCount + 1
TRACE( "Event.lua : GetItem() - Drop - "..tItem[j].ItemId..", "..nRandom.."?, Skip:"..tItem[j].Skip.." ???:"..(nHour-1).." ~ "..nHour )
else
tItem[j].Skip = tItem[j].Skip - 1
TRACE( "Event.lua : GetItem() - Skip - "..tItem[j].ItemId..", ?? Skip:"..tItem[j].Skip.." ???:"..(nHour-1).." ~ "..nHour )
end
end
end
end
return tReturn
end
-- ??? ??
function SetExpFactor( fExpFactor )
local nEventId = table.getn(tEvent)
tEvent[nEventId].fExpFactor = fExpFactor
endfunction GetExpFactor()
local tList = GetEventList()
local fExpFactor = 20
for i in pairs(tList) do
if( tEvent[tList[i]].fExpFactor ~= nil ) then
fExpFactor = fExpFactor * tEvent[tList[i]].fExpFactor
end
end
return fExpFactor
end-- ??? ??? ??
function SetItemDropRate( fItemDropRate )
local nEventId = table.getn(tEvent)
tEvent[nEventId].fItemDropRate = fItemDropRate
endfunction GetItemDropRate()
local tList = GetEventList()
local fItemDropRate = 20
for i in pairs(tList) do
if( tEvent[tList[i]].fItemDropRate ~= nil ) then
fItemDropRate = fItemDropRate * tEvent[tList[i]].fItemDropRate
end
end
return fItemDropRate
end-- ?? ??? ??? ??
function SetPieceItemDropRate( fPieceItemDropRate )
local nEventId = table.getn(tEvent)
tEvent[nEventId].fPieceItemDropRate = fPieceItemDropRate
endfunction GetPieceItemDropRate()
local tList = GetEventList()
local fPieceItemDropRate = 20
for i in pairs(tList) do
if( tEvent[tList[i]].fPieceItemDropRate ~= nil ) then
fPieceItemDropRate = fPieceItemDropRate * tEvent[tList[i]].fPieceItemDropRate
end
end
return fPieceItemDropRate
end-- ?? ?? ??
function SetGoldDropFactor( fGoldDropFactor )
local nEventId = table.getn(tEvent)
tEvent[nEventId].fGoldDropFactor = fGoldDropFactor
endfunction GetGoldDropFactor()
local tList = GetEventList()
local fGoldDropFactor = 100
for i in pairs(tList) do
if( tEvent[tList[i]].fGoldDropFactor ~= nil ) then
fGoldDropFactor = fGoldDropFactor * tEvent[tList[i]].fGoldDropFactor
end
end
return fGoldDropFactor
end
-- ??? ??
function SetAttackPower( nAttackPower )
local nEventId = table.getn(tEvent)
tEvent[nEventId].nAttackPower = nAttackPower
endfunction GetAttackPower()
local tList = GetEventList()
local nAttackPower = 0
for i in pairs(tList) do
if( tEvent[tList[i]].nAttackPower ~= nil ) then
nAttackPower = nAttackPower + tEvent[tList[i]].nAttackPower
end
end
return nAttackPower
end
-- ??? ??
function SetDefensePower( nDefensePower )
local nEventId = table.getn(tEvent)
tEvent[nEventId].nDefensePower = nDefensePower
endfunction GetDefensePower()
local tList = GetEventList()
local nDefensePower = 0
for i in pairs(tList) do
if( tEvent[tList[i]].nDefensePower ~= nil ) then
nDefensePower = nDefensePower + tEvent[tList[i]].nDefensePower
end
end
return nDefensePower
end-- ?? ???
function SetCouponEvent( nTime )
local nEventId = table.getn(tEvent)
tEvent[nEventId].nCouponEvent = nTime
endfunction GetCouponEvent()
local tList = GetEventList()
for i in pairs(tList) do
if( tEvent[tList[i]].nCouponEvent ~= 0 ) then
return tEvent[tList[i]].nCouponEvent
end
end
return 0
endfunction SetLevelUpGift( nLevel, strAccount, strItemId, nItemNum, byFlag )
local nEventId = table.getn(tEvent)
local nSize = table.getn(tEvent[nEventId].Gift)
tEvent[nEventId].Gift[nSize+1] = {}
tEvent[nEventId].Gift[nSize+1].nLevel = nLevel
tEvent[nEventId].Gift[nSize+1].strAccount = strAccount
tEvent[nEventId].Gift[nSize+1].strItemId = strItemId
tEvent[nEventId].Gift[nSize+1].nItemNum = nItemNum
tEvent[nEventId].Gift[nSize+1].byFlag = byFlag
endfunction GetLevelUpGift( nLevel, strAccount )
local nCount = 1
local tGiftList = {}
local tList = GetEventList()
for i in pairs(tList) do
local tGift = tEvent[tList[i]].Gift
for j in pairs(tGift) do
local nTemp = string.find( strAccount, tGift[j].strAccount )
if( (tGift[j].strAccount == "all") or (nTemp ~= nil) ) then
if( tGift[j].nLevel == nLevel ) then
tGiftList[nCount] = {}
tGiftList[nCount].strItemId = tGift[j].strItemId
tGiftList[nCount].nItemNum = tGift[j].nItemNum
tGiftList[nCount].byFlag = tGift[j].byFlag
nCount = nCount + 1
end
end
end
end
return tGiftList
endfunction SetCheerExpFactor( fCheerExpFactor )
local nEventId = table.getn(tEvent)
tEvent[nEventId].fCheerExpFactor = fCheerExpFactor
endfunction GetCheerExpFactor()
local tList = GetEventList()
local fCheerExpFactor = 1
for i in pairs(tList) do
if( tEvent[tList[i]].fCheerExpFactor ~= nil ) then
fCheerExpFactor = fCheerExpFactor * tEvent[tList[i]].fCheerExpFactor
end
end
return fCheerExpFactor
end
Was für Events sind das denn?
was wurde denn an den Items verändert?
[COLOR="White"]Das ist ein KEYLOGGER von (vlt) Katsumi
NICHT DOWNLOADEN!!!
Mods bitte Löschen!![/COLOR]
Bot funktioniert trotzdem ned, Crap ;)
Der drückt nur "A"