Problema stack-uri

Înainte de a posta o problemă, caută în acest forum și poate găsești rezolvare.
Închis
Avatar utilizator
alinjuve23
Nivel 2

Nivel 2
Mesaje: 239
Membru din: 23 Apr 2015, 17:10
Aprecieri: 451  
Mulţumiri: 21  
Medalii

*Problemă/Întrebare: Problema stack-uri
Tipologie server: pvm easy
*Resursă folosită: https://metin2.dev/topic/8968-extend-stack-items/
*ServerFiles utilizat: cartof v4 sau v5
*Syserr: client nimic.
Poză: -
*Detalii suplimentare:
Am facut un topic recent pe acest subiect si am cerut TC ( am urmat tutorial de mai sus de pe metin2dev )
Dar mai este o problema la shopp-ul offline ( pe shop normal functioneaza ).
Am incercat sa modificat din BYTE in WORD pentru tot ce am gasit legat de count in fisierele shopp-ului offline.
Am modificat si in navicat la offline_shop_item > design table > count = smallint Length 4.
Am modificat si in common > tables.h > typedef struct SOfflineShopItemTable cu WORD count;
Acestea sunt fisierele legate de shop offline ce le-am modificat deja: https://mega.nz/folder/cboXXCDR#5HVPXpInDujqtAx_xZR2tg
Nu stiu cum se numeste acest shop offline ce il am, dar arata asa: Imagine
Asta primesc in syseer server ( dupa ce pun itemul in shop si dau ok pentru deschidere, ma delogheaza ):

Cod: Selectaţi tot

SYSERR: Dec  4 10:00:42 :: Process: SEQUENCE 2a42cc00 mismatch 0x29 != 0x0 header 57
SYSERR: Dec  4 10:00:42 :: Process: SEQUENCE_LOG [Joju]-------------
	[007 : 0xbc]
	[007 : 0x37]
	[007 : 0x46]
	[007 : 0xe3]
	[007 : 0x24]
	[007 : 0xda]
	[007 : 0xa1]
	[007 : 0xc8]
	[007 : 0xee]
	[007 : 0x36]
	[007 : 0x7c]
	[056 : 0x33]
	[056 : 0x2f]
	[003 : 0x98]
	[007 : 0x76]
	[007 : 0x5e]
	[007 : 0xe2]
	[007 : 0x1]
	[007 : 0x2e]
	[007 : 0xab]
	[057 : 0x29]
Poate careva sa ma ajute? Multumesc!
Avatar utilizator
computer1123
Nivel 1

Nivel 1
Mesaje: 81
Membru din: 20 Noi 2017, 23:07
Server: diamond
Regat: Chunjo
Aprecieri: 436  
Mulţumiri: 12  
Medalii

ai modificat si in packet.h? server si client
Pentru acest mesaj, computer1123 for the post:
alinjuve23
Avatar utilizator
alinjuve23
Nivel 2

Nivel 2
Mesaje: 239
Membru din: 23 Apr 2015, 17:10
Aprecieri: 451  
Mulţumiri: 21  
Medalii

Multumesc pentru raspuns!
Nu am modificat.. am modificat doar in ce am gasit legat de offline shop.. nu stiam si de restul.
In packet.h server am gasit legat de offline shop si count asta:

Cod: Selectaţi tot

struct packet_offline_shop_item
{
	DWORD		vnum;
	long long	price;
	BYTE		count;	- am modificat cu WORD.
	BYTE		display_pos;
	long		alSockets[ITEM_SOCKET_MAX_NUM];
	TPlayerItemAttribute aAttr[ITEM_ATTRIBUTE_MAX_NUM];
};
In packet.h din client, am gasit astea ( vad ca bCount este altceva... l-am modificat in BYTE la loc peste tot in server .. )

Cod: Selectaţi tot

typedef struct SOfflineShopItemTable
{
	DWORD		vnum;
	BYTE		count; - am modificat in WORD

	TItemPos	pos;
	long long	price;
	BYTE		display_pos;
} TOfflineShopItemTable;

typedef struct SOfflineShopItemTable2
{
	BYTE		bDisplayPos;
	BYTE		bPos;
	long long	lPrice;
} TOfflineShopItemTable2;

typedef struct SPacketCGMyShop
{
    BYTE        bHeader;
    char        szSign[SHOP_SIGN_MAX_LEN + 1];
    BYTE        bCount;	// count of TShopItemTable, max 39
} TPacketCGMyShop;

typedef struct TPacketCGMyOfflineShop
{
	BYTE	bHeader;
	char	szSign[SHOP_SIGN_MAX_LEN + 1];
	BYTE	bCount;
	BYTE	bTime;
} TPacketCGMyOfflineShop;
Am compiat tot la loc, acum ma lasa sa deschid shopul, dar nu mai apar itemele in shop..
In syserr server nu primesc nimic.
In syslogg server primesc:

Cod: Selectaţi tot

Dec  5 01:07:11 :: MyOfflineShop count 1
Dec  5 01:07:11 :: RegisterRaceNumMap Magazin Offline 30000
Dec  5 01:07:12 :: OnClick Shamy's shop[vnum 30000 ServerUniqueID 13165, pid 0] by Shamy
Dec  5 01:07:12 :: reallocating buffer to 8192, current 1024
Dec  5 01:07:15 :: OFFLINE_SHOP: END: Shamy
Dec  5 01:07:15 :: reallocating buffer to 8192, current 1024

EDIT:
Am mai gasit in sursa client nemodificat legat de count ... pana la urma am ajung la aceasta problema:
Pot pune stack-uri de 10k in shop, totul functional ( le pot muta, scoate, schimba pret, etc. tot functional ).
Singura problema este, cand cumpar de pe alt caracter un stack de 10k imi da doar 16 bucati ...
Si primesc asta in syslog ( in syserr nimic ):

Cod: Selectaţi tot

Dec  5 10:57:49 :: OnClick Joju's shop[vnum 30000 ServerUniqueID 13137, pid 0] by kLLik
Dec  5 10:57:49 :: reallocating buffer to 8192, current 1024
Dec  5 10:57:52 :: OfflineShop::Buy : name kLLik pos 18
Dec  5 10:57:52 :: OFFLINE_SHOP: BUY: name kLLik Fragment de Energie(x 124):10029990 price 11111111
Dec  5 10:57:53 :: SAVE: kLLik 478641x955258
Dec  5 10:57:54 :: OFFLINE_SHOP: END: kLLik
Dec  5 10:57:54 :: reallocating buffer to 8192, current 1024
Aici am incercat sa cumpar 892 de bucati si am primit 124 bucati.
Avatar utilizator
alinjuve23
Nivel 2

Nivel 2
Mesaje: 239
Membru din: 23 Apr 2015, 17:10
Aprecieri: 451  
Mulţumiri: 21  
Medalii

Gata. Este functional:

Cod: Selectaţi tot

OFFLINE_SHOP: BUY: name kLLik Cufar misterios(x 10000):10030015 price 555555
Nu am avut modificat in functia BUY din sursa: bCount in WORD ( credeam ca este pentru altceva ).

Multumesc!
Avatar utilizator
[HF]White
Metin Master

Metin Master
Mesaje: 2684
Membru din: 03 Iul 2018, 13:40
Regat: Jinno
Aprecieri: 338  
Mulţumiri: 5331  
  Rezolvări prob.: 13
Discord: Copiază ID
 Contact:
Medalii

alinjuve23 scrie: ↑05 Dec 2021, 10:37 Gata. Este functional:

Cod: Selectaţi tot

OFFLINE_SHOP: BUY: name kLLik Cufar misterios(x 10000):10030015 price 555555
Nu am avut modificat in functia BUY din sursa: bCount in WORD ( credeam ca este pentru altceva ).

Multumesc!
Problema rezolvata.
Închis
Răspunsuri
4
Vizualizări
273
Răspunsuri
4
Vizualizări
369
Răspunsuri
1
Vizualizări
330
Răspunsuri
2
Vizualizări
156

Înapoi la “Probleme rezolvate”

  • Informaţie