Szerző Téma: SA-MP 0.2.5 Bétateszt  (Megtekintve 15322 alkalommal)

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
SA-MP 0.2.5 Bétateszt
« Válasz #75 Dátum: 2014. Április 20. - 12:57:26 »
0
Idézetet írta: divkn date=1397929901\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47718\" data-ipsquote-contentclass=\"forums_Topic
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();
}

Nem elérhető divkn

  • 3259
    • Profil megtekintése
SA-MP 0.2.5 Bétateszt
« Válasz #76 Dátum: 2014. Április 21. - 15:37:23 »
0
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.

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
SA-MP 0.2.5 Bétateszt
« Válasz #77 Dátum: 2014. Április 24. - 06:59:49 »
0
Idézetet írta: divkn date=1398087443\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47718\" data-ipsquote-contentclass=\"forums_Topic
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.
 
Valami hír? Megy vagy ugyan az a hiba?  :hmmm:

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal