*Problema:quest vouchere md
Tipologie server(PvM / PvP):pvm
*Resursa folosita: *Link exclusiv J4M*
*ServerFiles utilizat:WoT2
*Syserr:
Poza:
*Detalii suplimentare:Salut,am voucherele implementate,totul arata ok,dau pe voucher scrie ai primit ...md si rezultat zero in account/coins
questlib.lua:
give_md(z)
os.execute("mysql -u root --password='zzzzzzzz' account --execute='UPDATE account SET coins = coins + ".. z .." WHERE id = ".. pc.get_account_id() ..";'")
os.execute("mysql -u root --password='zzzzzzzz' log --execute='INSERT INTO voucher_log (account_id, monede, data) VALUES (".. pc.get_account_id() ..", ".. z ..", NOW());'")
end
quest voucher:
quest vouchers begin
state start begin
when 80014.use begin
say_title("Voucher Monede Dragon")
say("Ai primit 100 Monede Dragon")
give_md(100)
item.remove()
end
when 80017.use begin
say_title("Voucher Monede Dragon")
say("Ai primit 50 Monede Dragon")
give_md(50)
item.remove()
end
when 80015.use begin
say_title("Voucher Monede Dragon")
say("Ai primit 500 Monede Dragon")
give_md(500)
item.remove()
end
when 80016.use begin
say_title("Voucher Monede Dragon")
say("Ai primit 1000 Monede Dragon")
give_md(1000)
item.remove()
end
end
end
Vreo idee de la ce poate fi? Tin sa precizez,questul a fost executat corect,fara erori ! Am citit tot ce se poate pe Just4metin,nu am idee de la ce poate fi,din sursa?Si daca da dupa ce trebuie sa ma uit,multumesc !
si revin cu un edit,cand dau pe voucher in panoul mysql apare :
root@vds:/usr/game # ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
eu am pus password de la navicat in questlib
Problema vouchere
- Bgd
-

- Mesaje: 269
- Membru din: 13 Sep 2013, 11:52
- Aprecieri: 170
- Mulţumiri: 160
- Discord: Copiază ID
In questlib trebuie pusa parola de la "root@localhost", care probabil e diferita fata de cea pe care o folosesti tu sa te loghezi in navicat.
Uita-te in config ch1 de exemplu, ar trebui sa ai asa:
PLAYER_SQL: localhost root parola
Daca nu ai asa, ceva asemanator. Parola de pe acea linie trebuie pusa in questlib, bafta!
Daca ai altceva in loc la "root", modifica in questlib root cu ce ai tu in config.
La final, in questlib trebuie sa ai ceva de genul:
Uita-te in config ch1 de exemplu, ar trebui sa ai asa:
PLAYER_SQL: localhost root parola
Daca nu ai asa, ceva asemanator. Parola de pe acea linie trebuie pusa in questlib, bafta!
Daca ai altceva in loc la "root", modifica in questlib root cu ce ai tu in config.
La final, in questlib trebuie sa ai ceva de genul:
give_md(z)
os.execute("mysql -u user_din_config --password='parola_din_config' account --execute='UPDATE account SET coins = coins + ".. z .." WHERE id = ".. pc.get_account_id() ..";'")
os.execute("mysql -u user_din_config --password='parola_din_config' log --execute='INSERT INTO voucher_log (account_id, monede, data) VALUES (".. pc.get_account_id() ..", ".. z ..", NOW());'")
end
am inteles,imediat incerc si vin cu edit,multumesc !denyxp31 scrie:In questlib trebuie pusa parola de la "root@localhost", care probabil e diferita fata de cea pe care o folosesti tu sa te loghezi in navicat.
Uita-te in config ch1 de exemplu, ar trebui sa ai asa:
PLAYER_SQL: localhost root parola
Daca nu ai asa, ceva asemanator. Parola de pe acea linie trebuie pusa in questlib, bafta!
Daca ai altceva in loc la "root", modifica in questlib root cu ce ai tu in config.
La final, in questlib trebuie sa ai ceva de genul:give_md(z)
os.execute("mysql -u user_din_config --password='parola_din_config' account --execute='UPDATE account SET coins = coins + ".. z .." WHERE id = ".. pc.get_account_id() ..";'")
os.execute("mysql -u user_din_config --password='parola_din_config' log --execute='INSERT INTO voucher_log (account_id, monede, data) VALUES (".. pc.get_account_id() ..", ".. z ..", NOW());'")
end
Din pacate aceeasi eroare,o sa mai sap prin navicat sa vad ce useri mai am.
DAR, daca eu am schimbat userul,cu grant table,e clar ca vechiul user nu mai are nici o legatura acolo,nu?
Da,le-am pus,dar nu inteleg de ce insista ca nu e ,probabil formularea nu e corecta,poti sa arunci o privire peste ea? e in descriere.Multumesc![ST]SSH scrie:Trebuie sa pui user si parola de la tine!
- Ene
-

- Mesaje: 1659
- Membru din: 09 Sep 2016, 01:00
- Server: Clasic
- Regat: Jinno
- Aprecieri: 274
- Mulţumiri: 603
- Rezolvări prob.: 2
- Discord: Copiază ID
si sursa la sv?hware82 scrie:Da,le-am pus,dar nu inteleg de ce insista ca nu e ,probabil formularea nu e corecta,poti sa arunci o privire peste ea? e in descriere.Multumesc![ST]SSH scrie:Trebuie sa pui user si parola de la tine!
daca ai ati zic eu o rezolvare rapida si usoara
da am sursa,ar fi fantastic !Ene scrie:si sursa la sv?hware82 scrie:Da,le-am pus,dar nu inteleg de ce insista ca nu e ,probabil formularea nu e corecta,poti sa arunci o privire peste ea? e in descriere.Multumesc![ST]SSH scrie:Trebuie sa pui user si parola de la tine!
daca ai ati zic eu o rezolvare rapida si usoara
- Ene
-

- Mesaje: 1659
- Membru din: 09 Sep 2016, 01:00
- Server: Clasic
- Regat: Jinno
- Aprecieri: 274
- Mulţumiri: 603
- Rezolvări prob.: 2
- Discord: Copiază ID
intra in > db/src/ClientManagar.cpp
si cauta >
schimba cu asta
pe urma compileaza sursa la db si aia e
dezinstalezi questu ala cel ai tu si al bagi pe asta
va merge 100% e testat de mine si merge
si cauta >
Cod: Selectaţi tot
sprintf(szQuery, "update account set `cash` = `cash` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
Cod: Selectaţi tot
sprintf(szQuery, "update account set `coins` = `coins` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
dezinstalezi questu ala cel ai tu si al bagi pe asta
Cod: Selectaţi tot
quest charge_cash_by_voucher begin
state start begin
function charge(amount, charge_type)
if charge_type == nil then
charge_type = "coins"
end
if 0 < amount then
-- syntax : pc.charge_cash(amount, charge_type)
-- warning: 1. 'charge_type' : "cash"(default) | "mileage"
-- 2. 'amount' must be positive number.
local result = pc.charge_cash(amount, charge_type)
if true == result then
local item_id = item.get_id()
char_log(item_id, "CHARGE_CASH_BY_VOUCHER", amount)
syschat("MD a fost transferat in cont. "..amount.." .... ")
local flag_name = "total_" .. charge_type
pc.setqf(flag_name, pc.getqf(flag_name) + amount)
item.remove()
end
end
return false
end
when 80014.use or 80015.use or 80016.use or 80017.use begin
local amount = item.get_value(0)
charge_cash_by_voucher.charge(amount, "coins")
end
end
end
O sa incerc acu,doar ca eu am o problema cu sursa db,imi da ceva eroare din boost-nu gaseste fisiere,o sa incerc sa rezolv si rev cu edit,multumesc !Ene scrie:intra in > db/src/ClientManagar.cpp
si cauta >schimba cu astaCod: Selectaţi tot
sprintf(szQuery, "update account set `cash` = `cash` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
pe urma compileaza sursa la db si aia eCod: Selectaţi tot
sprintf(szQuery, "update account set `coins` = `coins` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
dezinstalezi questu ala cel ai tu si al bagi pe asta
va merge 100% e testat de mine si mergeCod: Selectaţi tot
quest charge_cash_by_voucher begin state start begin function charge(amount, charge_type) if charge_type == nil then charge_type = "coins" end if 0 < amount then -- syntax : pc.charge_cash(amount, charge_type) -- warning: 1. 'charge_type' : "cash"(default) | "mileage" -- 2. 'amount' must be positive number. local result = pc.charge_cash(amount, charge_type) if true == result then local item_id = item.get_id() char_log(item_id, "CHARGE_CASH_BY_VOUCHER", amount) syschat("MD a fost transferat in cont. "..amount.." .... ") local flag_name = "total_" .. charge_type pc.setqf(flag_name, pc.getqf(flag_name) + amount) item.remove() end end return false end when 80014.use or 80015.use or 80016.use or 80017.use begin local amount = item.get_value(0) charge_cash_by_voucher.charge(amount, "coins") end end end
a,deci asta era problema,in loc de coins in sursa e cash si daca ar fi sa modifici quest si sectiunea coins din account cu cash ar merge?
cred ca e ceva ciudat cu link-urile in makefile la mine in db -I/usr/include/ deci e directionat pe include din usr nu din extern sursa,e normal asa? si lib-urile la fel
Ok,am compilat,acum intrebarea e, in questlib si functions ramane asa?
Am luat-o de la capat si surpriza : a mers,esti un geniu man,multumesc mult !!! ai
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 18 vizitatori


