Hol is kezdjem... Hai. :D Nem is olyan régen indítottam egy témát arról hogy mit szólnátok ahhoz hogyha mûködõképesre alakítanám a régi SA-MP 0.2 forráskódját és publikálnám itt a fórumon, mivel olyan helyre kellett mennem ahol nincs internet elérhetõség, így nem tudtam folytatni egyik projektemet sem, szóval gondoltam ezt, de végül visszavontam vagyis töröltettem a témát mert találtam más elfoglatságot amivel elüthettem az idõmet. Most ismét visszatértem ehhez és végeztem is vele, már csak tesztelésre vár, illetve még körülnézek benne hogy netán találok olyan kódot ami kommunikál a sa-mp.com oldallal vagy valami. Nem számítsatok újdonságokra, mivel nem újított, hanem butított változata SA-MP 0.2-nek és a felmerülõ hibákat késõbb javításra hozom õket, ha kell persze. A bétatesztet ezen a héten szombatra (2014. április 19-én) terveztem, ám ez tõletek is függ hogy mikor jó. Akik részt szeretnének venni a tesztelésben, azok kérlek tegyék fel a kezüket az internetre. Azok majd megkapják privátban a szerver elérhetõséget és letöltési linket és útmutatót is elvileg. Ja, és nem utolsó sorban ingyenes Windowsos hostingot keresek. Nincs kedvem letölteni a MinGW-t. XD
Jelentkezek. :) De azért örülnék, ha valami folytán tudnád folytatni a projektet, pl. újabb egyedi szkriptelési funkciók beépítésével. (Vagy ha rámennél a látványra, illetve a mi (magyaros) ízlésünkhöz szabnád.) :D
De azért örülnék, ha valami folytán tudnád folytatni a projektet, pl. újabb egyedi szkriptelési funkciók beépítésével. (Vagy ha rámennél a látványra, illetve a mi (magyaros) ízlésünkhöz szabnád.) :D
Mindenképp ezt szeretném folytatni, mint szenvedni SAO-nál az új socket rendszert kialakítani, szinkronizálni a karaktereket, jármûveket, objekteket, NPC-ket. SA-MP forráskódjában minden elvan készítve, csak ki kell egészíteni és erõsíteni kell a socket részt.
Végre sikerült kivenni a forráskódjából a samp.saa olvasását szóval most lehetséges handlinget használni elvileg meg módokat is, egyébként sem mûködött a funkció, csak lefagy a dinamikus könyvtár a AChost constructornál. [hs width=320 height=240]http://kepfeltoltes.hu/140416/samp_www.kepfeltoltes.hu_.png[/hs] Most már csak egy crasht kell javítani elvileg. Remélem végzek vele szombatra.
Jó lenne az is, csak le kell töltenem ahhoz a MinGW-t hogy lefordítsam a samp-server forráskódját linuxra és nem is írtam át teljesen linuxra sem, mert voltak olyan funkciók benne amiket nem értettem és az open source project sem mondott semmit. Fordítása az kb. 1-2 percbe telik.
Lehet elvesztettem az eszem, vagy egyszerûen rossz napom van, de egy hiba nem akar megoldódni egyszerûen. Azt hiszem a nyitás elfog tolódni pár nappal, mivel az üzenõfal input, csatlakozási képernyõ és a debug mód crashel a kliens oldalon. Egyenlõre dolgozom rajta. [hs width=320 height=180]http://kepfeltoltes.hu/140418/fail_www.kepfeltoltes.hu_.png[/hs]
Nem tudjuk a probléma okát, de legtöbben azt gyanúsítják hogy amit én letöltöttem RakNet fájlokat SourceForge oldalról, azok mind módosítottak. Halvány lila gõzöm sincs miért mondják ezt, hisz megnéztem 1-2 hivatalos RakNet kiadást és minden ugyabúgy van, mint a a jelenlegiben, persze vannak benne külömbségek, de azok mind javításoknak látszanak, nem pedig módosításnak, végül jobban körülnéztem a RakNet dokumtumaiba és a data változónak \"unsigned char *\" pointeres típusként van megadva, ez ami megmagyarázza miért omlik össze a kliens ha a packet->data-nak megadjuk a [ 0 ]-ás tömböt. Ha nem adom meg akkor rendesen visszatér 8-al, ami azt jelentené hogy a szerverre nem tudott felcsatlakozni, ezért újra megpróbál. De nem értem miért omlik össze. A RakNet hasznlati útmutatóban is data[0]-át használ, a VCMP forráskódjában is data[ 0 ], SÕT! még a BitStream és jópár RakNet fájljaiban szintén data[0]-ként van deklarálva. Szóval jelenleg ott tartunk hogy minden data részt átírunk. El fog tartani pár napig míg el nem készül. :(
Nem tudjuk a probléma okát, de legtöbben azt gyanúsítják hogy amit én letöltöttem RakNet fájlokat SourceForge oldalról, azok mind módosítottak. Halvány lila gõzöm sincs miért mondják ezt, hisz megnéztem 1-2 hivatalos RakNet kiadást és minden ugyabúgy van, mint a a jelenlegiben, persze vannak benne külömbségek, de azok mind javításoknak látszanak, nem pedig módosításnak, végül jobban körülnéztem a RakNet dokumtumaiba és a data változónak \"unsigned char *\" pointeres típusként van megadva, ez ami megmagyarázza miért omlik össze a kliens ha a packet->data-nak megadjuk a [ 0 ]-ás tömböt. Ha nem adom meg akkor rendesen visszatér 8-al, ami azt jelentené hogy a szerverre nem tudott felcsatlakozni, ezért újra megpróbál. De nem értem miért omlik össze. A RakNet hasznlati útmutatóban is data[0]-át használ, a VCMP forráskódjában is data[ 0 ], SÕT! még a BitStream és jópár RakNet fájljaiban szintén data[0]-ként van deklarálva. Szóval jelenleg ott tartunk hogy minden data részt átírunk. El fog tartani pár napig míg el nem készül. :(
És mire írjátok át ezeket a részeket?:D Konkrétan hasonló hibába estem énis a sobeit raknet hook-al, de monjuk én aztán basztam is rá..
/// This represents a user message from another system. struct Packet { /// Server only - this is the index into the player array that this playerId maps to PlayerIndex playerIndex; /// The system that send this packet. PlayerID playerId; /// The length of the data in bytes /// \\deprecated You should use bitSize. unsigned int length; /// The length of the data in bits unsigned int bitSize; /// The data from the sender unsigned char* data; /// @internal /// Indicates whether to delete the data, or to simply delete the packet. bool deleteData; }; Packet* HookedRakClientInterface::Receive( void ) { ////traceLastFunc( \"HookedRakClientInterface::Receive\" ); Packet* pPacket = g_RakClient->GetRakClientInterface()->Receive(); Log(\"asdasdasads\"); /* crash.... if(pPacket) { Log(\"id: %d\", pPacket->data[0]); } */ return g_RakClient->GetRakClientInterface()->Receive(); }
Sehogy. Hosszas beszélgetés után arra akadt fel a szemünk hogy a Receive() funkció végigfut bármilyen probléma nélkül, de ami megvan adva a netgame.cpp-ben a data[ 0 ] az crashel. Próbálgattuk átkonvertálni, levenni az a [ 0 ]-ás tömböt és így visszatért 8-al, ami ID_RPC_MAPPING azonosítója lenne és nincs az nincs a switch listán, szóval így tovább fut és a crash helyett lefagy a játék. Egyáltalán nem reagál a billentyûzetre, Ctrl + Alt + Del-re, Start menüre, Alt + Tab-ra, csak úgy ha újraindítod a gépet vagy benyomod a Sleep billentyút. Tegnap este úgy gondoltam letesztelem a Chat Example Server/Cleint projekteket és azok is tökéletesen mûködnek. Ám ott is crashelt a data[0], de csak azért mert azonos portszámot adtam meg kliensnek és szervernek. SA-MP forráskódjában pedig ez nem így van. Na, mindegy. Letöltöm a legújabb RakNet-et és arra írom át.
Sehogy. Hosszas beszélgetés után arra akadt fel a szemünk hogy a Receive() funkció végigfut bármilyen probléma nélkül, de ami megvan adva a netgame.cpp-ben a data[ 0 ] az crashel. Próbálgattuk átkonvertálni, levenni az a [ 0 ]-ás tömböt és így visszatért 8-al, ami ID_RPC_MAPPING azonosítója lenne és nincs az nincs a switch listán, szóval így tovább fut és a crash helyett lefagy a játék. Egyáltalán nem reagál a billentyûzetre, Ctrl + Alt + Del-re, Start menüre, Alt + Tab-ra, csak úgy ha újraindítod a gépet vagy benyomod a Sleep billentyút. Tegnap este úgy gondoltam letesztelem a Chat Example Server/Cleint projekteket és azok is tökéletesen mûködnek. Ám ott is crashelt a data[0], de csak azért mert azonos portszámot adtam meg kliensnek és szervernek. SA-MP forráskódjában pedig ez nem így van. Na, mindegy. Letöltöm a legújabb RakNet-et és arra írom át.
Hol is kezdjem... Hai. :D Nem is olyan régen indítottam egy témát arról hogy mit szólnátok ahhoz hogyha mûködõképesre alakítanám a régi SA-MP 0.2 forráskódját és publikálnám itt a fórumon, mivel olyan helyre kellett mennem ahol nincs internet elérhetõség, így nem tudtam folytatni egyik projektemet sem, szóval gondoltam ezt, de végül visszavontam vagyis töröltettem a témát mert találtam más elfoglatságot amivel elüthettem az idõmet. Most ismét visszatértem ehhez és végeztem is vele, már csak tesztelésre vár, illetve még körülnézek benne hogy netán találok olyan kódot ami kommunikál a sa-mp.com oldallal vagy valami. Nem számítsatok újdonságokra, mivel nem újított, hanem butított változata SA-MP 0.2-nek és a felmerülõ hibákat késõbb javításra hozom õket, ha kell persze. A bétatesztet ezen a héten szombatra (2014. április 19-én) terveztem, ám ez tõletek is függ hogy mikor jó. Akik részt szeretnének venni a tesztelésben, azok kérlek tegyék fel a kezüket az internetre. Azok majd megkapják privátban a szerver elérhetõséget és letöltési linket és útmutatót is elvileg. Ja, és nem utolsó sorban ingyenes Windowsos hostingot keresek. Nincs kedvem letölteni a MinGW-t. XD
Jelentkezek. :) De azért örülnék, ha valami folytán tudnád folytatni a projektet, pl. újabb egyedi szkriptelési funkciók beépítésével. (Vagy ha rámennél a látványra, illetve a mi (magyaros) ízlésünkhöz szabnád.) :D
De azért örülnék, ha valami folytán tudnád folytatni a projektet, pl. újabb egyedi szkriptelési funkciók beépítésével. (Vagy ha rámennél a látványra, illetve a mi (magyaros) ízlésünkhöz szabnád.) :D
Mindenképp ezt szeretném folytatni, mint szenvedni SAO-nál az új socket rendszert kialakítani, szinkronizálni a karaktereket, jármûveket, objekteket, NPC-ket. SA-MP forráskódjában minden elvan készítve, csak ki kell egészíteni és erõsíteni kell a socket részt.
Végre sikerült kivenni a forráskódjából a samp.saa olvasását szóval most lehetséges handlinget használni elvileg meg módokat is, egyébként sem mûködött a funkció, csak lefagy a dinamikus könyvtár a AChost constructornál. [hs width=320 height=240]http://kepfeltoltes.hu/140416/samp_www.kepfeltoltes.hu_.png[/hs] Most már csak egy crasht kell javítani elvileg. Remélem végzek vele szombatra.
Jó lenne az is, csak le kell töltenem ahhoz a MinGW-t hogy lefordítsam a samp-server forráskódját linuxra és nem is írtam át teljesen linuxra sem, mert voltak olyan funkciók benne amiket nem értettem és az open source project sem mondott semmit. Fordítása az kb. 1-2 percbe telik.
Lehet elvesztettem az eszem, vagy egyszerûen rossz napom van, de egy hiba nem akar megoldódni egyszerûen. Azt hiszem a nyitás elfog tolódni pár nappal, mivel az üzenõfal input, csatlakozási képernyõ és a debug mód crashel a kliens oldalon. Egyenlõre dolgozom rajta. [hs width=320 height=180]http://kepfeltoltes.hu/140418/fail_www.kepfeltoltes.hu_.png[/hs]
Nem tudjuk a probléma okát, de legtöbben azt gyanúsítják hogy amit én letöltöttem RakNet fájlokat SourceForge oldalról, azok mind módosítottak. Halvány lila gõzöm sincs miért mondják ezt, hisz megnéztem 1-2 hivatalos RakNet kiadást és minden ugyabúgy van, mint a a jelenlegiben, persze vannak benne külömbségek, de azok mind javításoknak látszanak, nem pedig módosításnak, végül jobban körülnéztem a RakNet dokumtumaiba és a data változónak \"unsigned char *\" pointeres típusként van megadva, ez ami megmagyarázza miért omlik össze a kliens ha a packet->data-nak megadjuk a [ 0 ]-ás tömböt. Ha nem adom meg akkor rendesen visszatér 8-al, ami azt jelentené hogy a szerverre nem tudott felcsatlakozni, ezért újra megpróbál. De nem értem miért omlik össze. A RakNet hasznlati útmutatóban is data[0]-át használ, a VCMP forráskódjában is data[ 0 ], SÕT! még a BitStream és jópár RakNet fájljaiban szintén data[0]-ként van deklarálva. Szóval jelenleg ott tartunk hogy minden data részt átírunk. El fog tartani pár napig míg el nem készül. :(
Nem tudjuk a probléma okát, de legtöbben azt gyanúsítják hogy amit én letöltöttem RakNet fájlokat SourceForge oldalról, azok mind módosítottak. Halvány lila gõzöm sincs miért mondják ezt, hisz megnéztem 1-2 hivatalos RakNet kiadást és minden ugyabúgy van, mint a a jelenlegiben, persze vannak benne külömbségek, de azok mind javításoknak látszanak, nem pedig módosításnak, végül jobban körülnéztem a RakNet dokumtumaiba és a data változónak \"unsigned char *\" pointeres típusként van megadva, ez ami megmagyarázza miért omlik össze a kliens ha a packet->data-nak megadjuk a [ 0 ]-ás tömböt. Ha nem adom meg akkor rendesen visszatér 8-al, ami azt jelentené hogy a szerverre nem tudott felcsatlakozni, ezért újra megpróbál. De nem értem miért omlik össze. A RakNet hasznlati útmutatóban is data[0]-át használ, a VCMP forráskódjában is data[ 0 ], SÕT! még a BitStream és jópár RakNet fájljaiban szintén data[0]-ként van deklarálva. Szóval jelenleg ott tartunk hogy minden data részt átírunk. El fog tartani pár napig míg el nem készül. :(
És mire írjátok át ezeket a részeket?:D Konkrétan hasonló hibába estem énis a sobeit raknet hook-al, de monjuk én aztán basztam is rá..
/// This represents a user message from another system. struct Packet { /// Server only - this is the index into the player array that this playerId maps to PlayerIndex playerIndex; /// The system that send this packet. PlayerID playerId; /// The length of the data in bytes /// \\deprecated You should use bitSize. unsigned int length; /// The length of the data in bits unsigned int bitSize; /// The data from the sender unsigned char* data; /// @internal /// Indicates whether to delete the data, or to simply delete the packet. bool deleteData; }; Packet* HookedRakClientInterface::Receive( void ) { ////traceLastFunc( \"HookedRakClientInterface::Receive\" ); Packet* pPacket = g_RakClient->GetRakClientInterface()->Receive(); Log(\"asdasdasads\"); /* crash.... if(pPacket) { Log(\"id: %d\", pPacket->data[0]); } */ return g_RakClient->GetRakClientInterface()->Receive(); }
Sehogy. Hosszas beszélgetés után arra akadt fel a szemünk hogy a Receive() funkció végigfut bármilyen probléma nélkül, de ami megvan adva a netgame.cpp-ben a data[ 0 ] az crashel. Próbálgattuk átkonvertálni, levenni az a [ 0 ]-ás tömböt és így visszatért 8-al, ami ID_RPC_MAPPING azonosítója lenne és nincs az nincs a switch listán, szóval így tovább fut és a crash helyett lefagy a játék. Egyáltalán nem reagál a billentyûzetre, Ctrl + Alt + Del-re, Start menüre, Alt + Tab-ra, csak úgy ha újraindítod a gépet vagy benyomod a Sleep billentyút. Tegnap este úgy gondoltam letesztelem a Chat Example Server/Cleint projekteket és azok is tökéletesen mûködnek. Ám ott is crashelt a data[0], de csak azért mert azonos portszámot adtam meg kliensnek és szervernek. SA-MP forráskódjában pedig ez nem így van. Na, mindegy. Letöltöm a legújabb RakNet-et és arra írom át.
Sehogy. Hosszas beszélgetés után arra akadt fel a szemünk hogy a Receive() funkció végigfut bármilyen probléma nélkül, de ami megvan adva a netgame.cpp-ben a data[ 0 ] az crashel. Próbálgattuk átkonvertálni, levenni az a [ 0 ]-ás tömböt és így visszatért 8-al, ami ID_RPC_MAPPING azonosítója lenne és nincs az nincs a switch listán, szóval így tovább fut és a crash helyett lefagy a játék. Egyáltalán nem reagál a billentyûzetre, Ctrl + Alt + Del-re, Start menüre, Alt + Tab-ra, csak úgy ha újraindítod a gépet vagy benyomod a Sleep billentyút. Tegnap este úgy gondoltam letesztelem a Chat Example Server/Cleint projekteket és azok is tökéletesen mûködnek. Ám ott is crashelt a data[0], de csak azért mert azonos portszámot adtam meg kliensnek és szervernek. SA-MP forráskódjában pedig ez nem így van. Na, mindegy. Letöltöm a legújabb RakNet-et és arra írom át.