Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 1,048
» Latest member: imihat
» Forum threads: 258
» Forum posts: 543

Full Statistics

Online Users
There are currently 30 online users.
» 0 Member(s) | 30 Guest(s)

Latest Threads
Ridack SHOP 3D & MAP & EF...
Forum: Services
Last Post: Ridack3D
Yesterday, 04:27 PM
» Replies: 10
» Views: 1,937
[C++, Python] Vegas - COU...
Forum: C++ / DIFF / Source
Last Post: Exonow
11-10-2018, 11:05 PM
» Replies: 4
» Views: 2,075
M2MNext kliens 2014
Forum: Services
Last Post: Mt2Master
11-08-2018, 03:53 AM
» Replies: 6
» Views: 578
game/dbforditás
Forum: C++ / DIFF / Source
Last Post: lacko
11-05-2018, 03:07 PM
» Replies: 0
» Views: 335
2018 Halloween hátas Deri
Forum: Services
Last Post: perspektivenemtudom
10-29-2018, 05:15 PM
» Replies: 1
» Views: 207
DEMT2
Forum: Szerverek
Last Post: perspektivenemtudom
10-28-2018, 11:07 AM
» Replies: 1
» Views: 285
[Skill] Elv. penge módra ...
Forum: Tutorials
Last Post: perspektivenemtudom
10-28-2018, 10:55 AM
» Replies: 1
» Views: 742
Nextworld2 Titán szett.
Forum: Armors
Last Post: perspektivenemtudom
10-25-2018, 06:01 PM
» Replies: 1
» Views: 337
Spider Mount
Forum: Services
Last Post: bancsiandris
10-16-2018, 10:57 AM
» Replies: 0
» Views: 144
Taria Online SF
Forum: Services
Last Post: devilcon
10-08-2018, 03:00 PM
» Replies: 5
» Views: 1,808

 
Thumbs Up [C++] Coins oszlop (SELECT / UPDATE)
Posted by: Pisti95 - 05-02-2018, 03:19 PM - Forum: C++ / DIFF / Source - No Replies

Mivel többek szeretnének SÉ-t jóváírni, valamint az egyenleget jóváírni a SÉ jegyekkel, ezért írtam meg ezt a leírást. Nekem is volt problémám az os.execute() -s questekkel, mert már 40k-nál nem igazán akar működni a dolog.


Mielőtt hozzáfogsz, feltétlenül szükséged lesz a mysql_query() adatfeldolgozó függvényre, hogy a forrásodban legyen!

Show ContentMysql_query():



questlua_pc.cpp-t nyisd meg!

Keress rá erre:
Code:
int pc_get_killee_drop_pct(lua_State* L)
{
...
}


Másold be alá ezt:
Code:
    /////////Pisti95/////////////
    int pc_add_coins(lua_State * L)
    {
        if (!lua_isnumber(L, 1))
        {
            sys_err("invalid argument");
            return 0;
        }

        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        long val = (long)lua_tonumber(L, 1);
        SQLMsg *msg;

        msg = DBManager::instance().DirectQuery("UPDATE account.account SET coins = coins + '%ld' WHERE id = '%d'", val, ch->GetAID());
        
        if (msg->uiSQLErrno != 0)
        {
            sys_err("pc_update_add_coins query failed");
            return 0;
        }
        delete msg;
    }

    int pc_del_coins(lua_State * L)
    {
        if (!lua_isnumber(L, 1))
        {
            sys_err("invalid argument");
            return 0;
        }

        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
        long val = (long)lua_tonumber(L, 1);
        SQLMsg *msg;

        msg = DBManager::instance().DirectQuery("UPDATE account.account SET coins = coins - '%ld' WHERE id = '%d'", val, ch->GetAID());
        
        if (msg->uiSQLErrno != 0)
        {
            sys_err("pc_update_del_coins query failed");
            return 0;
        }
        delete msg;
    }
    int pc_get_coins(lua_State* L)
    {
        LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();

        if (ch == NULL)
            return 0;

        SQLMsg *msg = DBManager::instance().DirectQuery("SELECT coins FROM account.account WHERE id = '%d'", ch->GetAID());

        if (msg->uiSQLErrno != 0)
            return 0;

        MYSQL_RES *res = msg->Get()->pSQLResult;
    
        MYSQL_ROW row = mysql_fetch_row(res);

        if (!row[0])
            return 0;

        lua_pushnumber(L, atoi(row[0]));
            return 1;
    }
    //////////////////////////////////////////////////////////////


Keress rá erre:
Code:
void RegisterPCFunctionTable()


Másold be a tömbbe ezeket a sorokat:
Code:
            ////////////////Pisti95//////////////////
            { "add_coins",        pc_add_coins    },
            { "del_coins",        pc_del_coins    },
            { "get_coins",        pc_get_coins    },
            /////////////////////////////////////////


Quest_functions-ba írd be ezeket a sorokat:
Code:
pc.del_coins
pc.add_coins
pc.get_coins


Questben így tudod használni az új parancsokat:

pc.del_coins(100) ----levon 100SÉ-t az account.account oszlopban lévő 'coins' oszlopból!

pc.add_coins(100) ----hozzáad 100SÉ-t az account.account oszlopban lévő 'coins' oszlophoz!

pc.get_coins()  ---lekérdezi az adott értékét a 'coins' oszlopnak.




Példa Quest:


Code:
quest se_utalvany begin
state start begin
when 80009.use begin ----100-as SÉ utalvány
    if pc.count_item(80009) >= 1 then
        say_reward("100SÉ jóváírva!")
        pc.remove_item(80009, 1)  ---utalvány törlése
        pc.add_coins(100)  ---SÉ-hez + 100
    else
        say_reward("Nincs nálad SÉ utalvány(100),")
        say_reward("így nem írható jóvá Sárkányérme!")
    end
end
end
end



Ennyi lenne! Sok sikert hozzá!


Üdv, Pisti95

Print this item

Thumbs Up [C++] Mysql_query() funkció
Posted by: Pisti95 - 05-02-2018, 12:05 PM - Forum: C++ / DIFF / Source - No Replies

questlua_game.cpp-t megnyitod!

elejére írod ezt:

Code:
////mysql////

#include "db.h"


Rákeresel erre:
Code:
int game_web_mall(lua_State* L)


Alá írod ezt:
Code:
    ////////mysql///////
    int game_mysql_query(lua_State* L)
    {
        //MYSQL_FIELD *field;
        SQLMsg* run = DBManager::instance().DirectQuery(lua_tostring(L,1));
        MYSQL_RES* res=run->Get()->pSQLResult;
        if (!res){
            lua_pushnumber(L, 0);
            return 0;
        }
        MYSQL_ROW row;
        lua_newtable(L);            
        int rowcount = 1;
        while((row = mysql_fetch_row(res))){
            lua_newtable(L);
            lua_pushnumber(L, rowcount);
            lua_pushvalue(L, -2);
            lua_settable(L, -4);
            unsigned int fields = mysql_num_fields(res);
            for(unsigned int i = 0; i < fields; i++){
                lua_pushnumber(L, i + 1);
                lua_pushstring(L, row[i]);
                lua_settable(L, -3);
            }
            lua_pop(L, 1);
            rowcount++;
        }
        return 1;
    }
    //////////////////////////////////////////////


A 'void RegisterGameFunctionTable()' táblába pedig beírod a listába:
Code:
            /////mysql/////
            {"mysql_query",                    game_mysql_query                },
            /////////////////////////////////


Üdv, Pisti95

Print this item

  [SELL]M2Bob fix as third-party app
Posted by: system - 04-29-2018, 06:00 PM - Forum: Services - Replies (3)

Hali!

Kérésre ültem neki, van több féle ideiglenes megoldás.. Ez úgy néz ki teljes.

A videó róla: (Nem az én szerverem volt, szimplán felbéreltek egy védelem kiépítésre ami tartalmazott egy ilyen kikötést is.)

You are not allowed to view links. Register or Login to view.

Azóta többet javítottam rajta, nem dob vissza hibát. Kérésre segítek integrálni patcherbe (C# patcher esetnél forrásba, C++ patchernél eredeti licenszelt enigmával védem).

1 hetes garanciát vállalok a működésére vonatkozóan!

Forrás nélküli ár: (dotpeek nem fog működni, szóval ne is próbálkozz..) 15ezer
Forrással: 30ezer

Csak előre utalás játszik. (Paypal is megfelel)

Itt tudsz elérni: fb.com/SystemMilan

Print this item

  serverfileok
Posted by: Hyckerdev - 04-23-2018, 10:36 PM - Forum: Services - No Replies

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

keresre torolve Smile

Print this item

Heart Afterlife2 Szerver, Forrás, Kliens eladó!
Posted by: [MOD]Morpheus - 04-23-2018, 08:58 PM - Forum: Services - No Replies

Köszöntök mindenkit!

Eladóvá vált az Afterlife2 szerverem teljes mértékig!

Néhány szóban róla:

Max szint 127
Maximum státusz 100

6 használható CH
PvP/PvM játékmenet, Rubinum feeling

Rendszerek:
~Offline bolt rendszer
~Kereskedőház rendszer
~Sárkány rulett rendszer
~Sárkánykő alkímia rendszer
~Energia rendszer
~Fejlődő pet rendszer
~Leltár lezárás rendszer
~Kosztüm rendszer kosztüm fegyverrel
~Fejleszthető hátas rendszer
~Beépített bónusz forgató rendszer
~AFK rendszer
~Beépített toplista
~Varázs kő fejlesztő rendszer(Áldás tekercsből készíthető varázsfém)
~Készségkönyv beváltó rendszer
~Okey kártya rendszer
~Öv rendszer
~Pánt rendszer
~Átalakítás rendszer
~Céh raktár rendszer
~Gyűrű rendszer
~Kliens színező

~És még van biztos egy pár, ha eszembe jutna mind Big Grin

Dungeonok(runok):

~Ördög katakombája
~Kék sárkány run
~Purgatórium
~Nemere őrtornya
~Ochao temploma
~Elvarázsolt erdő
~Erebos főszörny terem
~Meley run
~SD3 + BOSS 
~SD4 + BOSS
~Démon barlang(jelenleg inaktív, csak a droppot kell neki megírni)

~

Droppok nagy vonalakban:
~Minden metinkőből eshet optcserélő,rakó,készségkönyv,ördögűző,koncentrált (45+ metinekből lélekkő, 90 + metinekből lélekkő +),65 + metinekből eshet kosztüm láda
~Majom kazamata BOSS(mind a 3 kazamata) dobhat kismajom petet
~Pókkirálynő dobhat kispókot
~Azrael dobhat mini azraelt
~Kék sárkány dobhat kék sárkány tojást
~Minden mob dobhat áldás tekercset,kagylót

~Kagylóból nyitható halszálka(fontos fejlesztő)



További kérdéseket szívesen várok privátban!


Képek:
[Image: 504Webp.net_gifmaker.gif]
Képek részletesebben:
https://drive.google.com/open?id=1BIvBaM2_qk9iNp8Jf7Cks9sr1zWl0aHT

Ára: 60.000 forint

Köszönöm, hogy elolvastad!
További szép napot!

Print this item

  [3ds max] run/walk animació probléma
Posted by: arlinamid - 04-23-2018, 06:58 PM - Forum: Support - Replies (1)

Sziasztok, olyan személyt vagy leírást keresek lehet angol, német stb. ami/aki elmagyarázná esetleg képpel/videóval elmagyarázná mob run/walk animáció hogyan lehet korrektül megcsinálni. Több probálkozásom is volt. de már pár napja ezen görcsölök 3ds Maxba elmozdul korrektül de exportálás után vagy egy helyben áll, vagy körbe-körbe megy, vagy keresztül vág a mapon. 
Segítségeteket előre is köszönöm.

Print this item

  M2M
Posted by: Mizsi - 04-20-2018, 08:12 PM - Forum: Services - No Replies

Sziasztok! Big Grin
Felújított mester forrás,kliens,sf eladó:
Küldik ,stb minden magyarra fordítva
Optimalizált runok
Target system
Kereskedőház (másodikbéla féle)
Costum rendszer aktiválva
Ticket rendszer
Pánt és costum fegyver ,costum mount a forrásban benne van csak aktiválni kell a kliensben.
Teljesen futtatható,levédett állapotban.

Érdeklődni privátban lehet. Cool

Print this item

  Select + Login Interface like WoM2
Posted by: Neon - 04-20-2018, 04:11 PM - Forum: Quests / Python - No Replies

Hello, today I will give you this login interface, which is very similar to WoM2.
It's coded by me, good luck Smile By: (You are not allowed to view links. Register or Login to view.)

Original interface(WoM2):

Select images:
[Image: agxxC7F.png]
[Image: aBiTr0N.png]


Download (Select):
Show ContentSpoiler:

Login images:
[Image: aZsQmnK.png]
[Image: ai8ayKX.png]

Download (Login):
Show ContentSpoiler:

Print this item

Rainbow [LOW-TUT]Mysql telepítése (8.x-11.x)
Posted by: [MOD]Morpheus - 04-19-2018, 11:37 AM - Forum: Tutorials - No Replies

Áve nép!

Gondoltam, írok egy tutorialt róla, mert hát nincs elég fent a neten(röhögősfej)!

Ennél egyszerűbb módszert nem ismerek rá, szóval vágjunk bele!

1. Megnyitjuk a PuTTY-t, majd beírjuk ezt:

Quote:cd /usr && fetch You are not allowed to view links. Register or Login to view.

2.Megvárjuk, hogy leszedje a kb 230 megás cucckombót, majd:
Quote:tar zxvf pkg
megjegyzés: ez egy kis ideig eltarthat, addig amíg elkészül nyugodtan csináljatok egy kakaót...

3.Miután végzett, írjuk be ezt:
Quote:pkg install mysql55-server
megjegyzés: értelem szerűen a mysql55 jelentése: mysql 5.5, ha nem tetszik ez a verzió átírhatod magadnak, pl:
mysql55=mysql5.5
mysql56=mysql5.6
mysql57=mysql5.7

>FONTOS!< míg lefut, 3-4 helyen fog engedélyt kérni x-y dolgokra, csak Y betűt és [ENTER] -t kell ütni!


4. Ha lefutott jön a következő lépés:
Quote:ee /etc/rc.conf
ha megnyílik, léptessünk le a legalsó sorba a nyilak segítségével, és írjuk hozzá ezeket:

Quote:mysql_enable="YES"
fsck_y_enable="YES"
background_fsck="NO"
miután végeztünk vele, ESC billentyű, majd leave editor (első) majd, save changes, ezzel meg is volnánk, most kell neki egy reboot!

5. Mikor felállt a rendszer, írjunk neki egy ilyent:
Quote:mysql -uroot -p
Itt kérni fog jelszót, lásd:
Quote:Enter password:
csak nyomjunk egy [ENTER]-t neki, és folytassuk:
Quote:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'
most fog dobni nekünk egy ilyent:
Quote:     ->
ide írjuk a következőt:
Quote:IDENTIFIED BY 'amitakarszjelszónak' WITH GRANT OPTION;
ha mindent jól csináltál, ezt kell kiírnia rá:
Quote:Query OK, 0 rows affected (0.00 sec)


6. egyben utolsó rész, írunk egy ilyent neki:
Quote:exit;


Ezzel meg is volnánk, ha maradt még a kakaóból a bögre alján, igyuk meg és mossuk el a bögrét, ne legyen ránk anyu mérges! 

Print this item

  [C++] Level up
Posted by: Martinez-Works - 04-14-2018, 01:33 PM - Forum: C++ / DIFF / Source - Replies (5)

Sziasztok!

Olvasd el te$$$

Nyisd meg a common/service.h-t

1.) Keresd ezt :

Code:
#endif


2.) Add fölé ezt :

Code:
#define ENABLE_LEVELUP_MARTINEZ


Nyisd meg a game/src/char.cpp-t

1.) Keresd meg ezt :

Code:
        case POINT_LEVEL:
            if ((GetLevel() + amount) > gPlayerMaxLevel)
                return;
        
            SetLevel(GetLevel() + amount);
            val = GetLevel();

            sys_log(0, "LEVELUP: %s %d NEXT EXP %d", GetName(), GetLevel(), GetNextExp());

            PointChange(POINT_NEXT_EXP,    GetNextExp(), false);


2.) Add utána ezt :

Code:
#ifdef ENABLE_LEVELUP_MARTINEZ
            switch (val)
            {
                case 30:    case 60:    case 90:    case 120:    case 150:    case 180: //Ide ird hogy melyik szintenként irja ki a Gratulálást!
                case 210:    case 240:    case 270:    case 300:    case 330:    case 360: //Ide ird hogy melyik szintenként irja ki a Gratulálást!
                case 390:    case 420:    case 450:    case 480:    case 500:

                    char szNoticeLevelUp[QUERY_MAX_LEN];
                    snprintf(szNoticeLevelUp, sizeof(szNoticeLevelUp), "<Rendszer> Gratulálunk! %s sikeresen elérted a [%u] szintet!", GetName(), GetLevel());
                    BroadcastNotice(szNoticeLevelUp);
                    break;
                    
                default:
                    break;
            }    
#endif


Ui: Akinek nem lenne érthető annak elmondom a lényeget


ha neked van 1000 szinted akkor a a case cuccost kell bővítened a szinteket úgy állítod be ahogy akarod
Ha mindig 10-el növeled akkor 10 szintenként fog gratulálni annak a személynek aki elérte azt a szintet!!
Ha szeretnéd a ch1-2-3-4-t is ki íratni akkor azt is meglehet oldani

Remélem valaki hasznát veszi Smile Tongue

Print this item