Projekt: K&M_TFK

Wszystko o szeroko pojętej działalności Fanów gry: mapy, programy, tłumaczenia...

Moderatorzy: kuba11100, The Viking, Moderatorzy

ODPOWIEDZ

Co sądzisz o tym projekcie?

Dobry pomysł!
26
74%
Zły pomysł!
9
26%
 
Liczba głosów: 35

Awatar użytkownika
Syriusz
Użytkownik Forum
Posty: 35
Rejestracja: 08 maja 2011, 14:02
Lokalizacja: Jaworzno

Post autor: Syriusz »

Jako, że nikt się nie zgłosił z forum do pomocy i współpracuję z moim kuzynem prace niestety idą wolno ponieważ mój dzienny czas na kompie to max 2h a mam jeszcze inne zajęcia :P Ale pokarzę Wam efekt 3 niowej pracy mojego kompa... który może dokonał sporego odkrycia. Otóż udało mi się wyjąć cały kod źródłowy z pliku *.exe, który zajmuje 3801 stron w języku kodu programu można pobrać i obejrzeć:

- KM_TPR.pdf wersja zakodowana (rozmiar 10,53 MB) Obrazek

3 dni miałem kompa odpalonego i on tam sobie dekodował te krzeczki i otrzymałem takie coś:

- KM_TPR-dec.pdf wersja rozkodowana (rozmiar 10,11 MB) Obrazek

Jednak tutaj utknąłem program pokazuje mi wszysko jaka linijka za co odpowiada, jednak nie jestem programistą i nie znam się na tym, mój kuzyn właśnie ogarnia asamblera ale to ciężka wiedza :/

Popołudniu dorzucę screen-y bo cóż mogę innego pokazać :P Prace trwają a przeszkód coraz więcej[/url]
Awatar użytkownika
Phoenix_PL
Użytkownik Forum
Posty: 68
Rejestracja: 08 sty 2011, 18:00

Post autor: Phoenix_PL »

Otóż to, działaj, i powodzenia...
Woot...
Powracam ^^
Awatar użytkownika
ChrisEggII
Użytkownik Forum
Posty: 453
Rejestracja: 30 lip 2010, 14:57
Lokalizacja: Hajnówka/Białystok

Post autor: ChrisEggII »

No jeżeli już tyle ,,zielonych ptaszków'' postawiłeś na swoim projekcie to zaczynam mniej wątpić. Życzę powodzenia i czekam na efekt :}
Dla mnie to jest dosyć nieprawdopodobne tempo, mając 2 godziny dziennie pracy.
kuba11100
Administrator Forum 
Administrator Forum 
Posty: 1667
Rejestracja: 18 sie 2008, 13:57
Lokalizacja: Polska
Kontakt:

Post autor: kuba11100 »

Czas to akurat mniejszy problem, w porównaniu do 3800 stron kodu asemblera (i braku/małej wiedzy o nim) - ogarnięcie tego i doprowadzenie do używalnego stanu jest praktycznie niemożliwe.
Pozdrawiam,
kuba11100

Strefa KaMMirror misji
Awatar użytkownika
Phoenix_PL
Użytkownik Forum
Posty: 68
Rejestracja: 08 sty 2011, 18:00

Post autor: Phoenix_PL »

I tutaj się zgodzę... próbowałem kiedyś programować, a chociaż robiłem wszystko dobrze, zawsze był jakiś błąd...

//edit
Syriusz pisze:[...] 3 dni miałem kompa odpalonego [...]
Podłącz sobie kompa do kaskady :D Nie będzie problemów z chłodzeniem, i go przyspieszysz ^^
Woot...
Powracam ^^
Awatar użytkownika
Syriusz
Użytkownik Forum
Posty: 35
Rejestracja: 08 maja 2011, 14:02
Lokalizacja: Jaworzno

Post autor: Syriusz »

Phoenix_PL pisze:Podłącz sobie kompa do kaskady :D Nie będzie problemów z chłodzeniem, i go przyspieszysz ^^
Ja mojego chłodze azotem :P oczywiście żart. Na kompa nie narzekam co prawda jadę na AMD a wiadomo jaką przewagę Intel ma nad AMD pod względem mocy obliczeniowej. To przykład że 4 rdzenie nie są równe 4 rdzenią innego producenta :P:P

Ale wracając do tematu asamblerów... kod ogarnąłem i wiem już która linijka za jaką funkcję odpowiada, bo to zajęcie mojego kompa tyle męczyło.

Przykład:
Oto lista wszyskich zawartych w pliku exe poleceń do wykonania przy rozruchu:

Kod: Zaznacz cały

AVIFIL32.AVIFileExit
AVIFIL32.AVIFileGetStream
AVIFIL32.AVIFileInit
AVIFIL32.AVIFileOpenA
AVIFIL32.AVIFileRelease
AVIFIL32.AVIStreamBeginStreaming
AVIFIL32.AVIStreamInfoA
AVIFIL32.AVIStreamRead
AVIFIL32.AVIStreamReadFormat
AVIFIL32.AVIStreamRelease
binkw32._BinkClose@4
binkw32._BinkCopyToBuffer@28
binkw32._BinkDoFrame@4
binkw32._BinkNextFrame@4
binkw32._BinkOpen@8
DDRAW.DirectDrawCreate
DINPUT8.DirectInput8Create
DPLAYX.DirectPlayCreate
DPLAYX.DirectPlayEnumerateA
DPLAYX.DirectPlayLobbyCreateA
fmod._FSOUND_Init@12
fmod._FSOUND_IsPlaying@4
fmod._FSOUND_PlaySound@8
fmod._FSOUND_Sample_Alloc@28
fmod._FSOUND_Sample_Free@4
fmod._FSOUND_Sample_Load@16
fmod._FSOUND_Sample_Lock@28
fmod._FSOUND_Sample_SetDefaults@20
fmod._FSOUND_Sample_Unlock@20
fmod._FSOUND_SetDriver@4
fmod._FSOUND_SetMixer@4
fmod._FSOUND_SetOutput@4
fmod._FSOUND_SetPan@8
fmod._FSOUND_SetVolume@8
fmod._FSOUND_SetVolumeAbsolute@8
fmod._FSOUND_StopSound@4
fmod._FSOUND_Stream_Close@4
fmod._FSOUND_Stream_OpenFile@12
fmod._FSOUND_Stream_Play@8
fmod._FSOUND_Stream_SetEndCallback@12
fsgs.Fsgs_Cleanup
fsgs.Fsgs_QueryInterface
fsgs.Fsgs_QueryInterfaceName
fsgs.Fsgs_QueryInterfaceVersion
fsgs.Fsgs_Startup
GDI32.BitBlt
GDI32.CreateCompatibleDC
GDI32.CreateDIBSection
GDI32.CreatePalette
GDI32.CreateSolidBrush
GDI32.DeleteDC
GDI32.DeleteObject
GDI32.GetObjectA
GDI32.GetPixel
GDI32.GetSystemPaletteEntries
GDI32.RealizePalette
GDI32.SelectObject
GDI32.SelectPalette
GDI32.SetDIBColorTable
GDI32.StretchBlt
KERNEL32.CloseHandle
KERNEL32.CompareStringA
KERNEL32.CompareStringW
KERNEL32.CreateFileA
KERNEL32.CreateThread
KERNEL32.DeleteCriticalSection
KERNEL32.DeleteFileA
KERNEL32.EnterCriticalSection
KERNEL32.EnumSystemLocalesA
KERNEL32.ExitProcess
KERNEL32.FatalAppExitA
KERNEL32.FileTimeToLocalFileTime
KERNEL32.FileTimeToSystemTime
KERNEL32.FindClose
KERNEL32.FindFirstFileA
KERNEL32.FindNextFileA
KERNEL32.FlushFileBuffers
KERNEL32.FreeEnvironmentStringsA
KERNEL32.FreeEnvironmentStringsW
KERNEL32.GetACP
KERNEL32.GetCommandLineA
KERNEL32.GetCPInfo
KERNEL32.GetCurrentDirectoryA
KERNEL32.GetCurrentProcess
KERNEL32.GetCurrentThread
KERNEL32.GetCurrentThreadId
KERNEL32.GetEnvironmentStrings
KERNEL32.GetEnvironmentStringsW
KERNEL32.GetEnvironmentVariableA
KERNEL32.GetExitCodeThread
KERNEL32.GetFileSize
KERNEL32.GetFileType
KERNEL32.GetLastError
KERNEL32.GetLocaleInfoA
KERNEL32.GetLocaleInfoW
KERNEL32.GetModuleFileNameA
KERNEL32.GetModuleHandleA
KERNEL32.GetOEMCP
KERNEL32.GetProcAddress
KERNEL32.GetStartupInfoA
KERNEL32.GetStdHandle
KERNEL32.GetStringTypeA
KERNEL32.GetStringTypeW
KERNEL32.GetTickCount
KERNEL32.GetTimeZoneInformation
KERNEL32.GetUserDefaultLCID
KERNEL32.GetVersion
KERNEL32.GetVersionExA
KERNEL32.HeapAlloc
KERNEL32.HeapCreate
KERNEL32.HeapDestroy
KERNEL32.HeapFree
KERNEL32.HeapReAlloc
KERNEL32.InitializeCriticalSection
KERNEL32.InterlockedDecrement
KERNEL32.InterlockedIncrement
KERNEL32.IsBadCodePtr
KERNEL32.IsBadReadPtr
KERNEL32.IsBadWritePtr
KERNEL32.IsValidCodePage
KERNEL32.IsValidLocale
KERNEL32.LCMapStringA
KERNEL32.LCMapStringW
KERNEL32.LeaveCriticalSection
KERNEL32.LoadLibraryA
KERNEL32.lstrlenA
KERNEL32.MultiByteToWideChar
KERNEL32.ReadFile
KERNEL32.RtlUnwind
KERNEL32.SetConsoleCtrlHandler
KERNEL32.SetCurrentDirectoryA
KERNEL32.SetEnvironmentVariableA
KERNEL32.SetFilePointer
KERNEL32.SetHandleCount
KERNEL32.SetLastError
KERNEL32.SetStdHandle
KERNEL32.SetUnhandledExceptionFilter
KERNEL32.Sleep
KERNEL32.TerminateProcess
KERNEL32.TlsAlloc
KERNEL32.TlsFree
KERNEL32.TlsGetValue
KERNEL32.TlsSetValue
KERNEL32.UnhandledExceptionFilter
KERNEL32.VirtualAlloc
KERNEL32.VirtualFree
KERNEL32.WideCharToMultiByte
KERNEL32.WriteFile
MSVFW32.ICLocate
MSVFW32.ICSendMessage
ole32.CoCreateInstance
ole32.CoInitialize
USER32.BeginPaint
USER32.CreateWindowExA
USER32.DefWindowProcA
USER32.DestroyWindow
USER32.DispatchMessageA
USER32.FillRect
USER32.GetAsyncKeyState
USER32.GetClientRect
USER32.GetDC
USER32.GetMessageA
USER32.GetSysColor
USER32.GetWindowDC
USER32.LoadCursorA
USER32.LoadIconA
USER32.LoadImageA
USER32.MessageBoxA
USER32.PeekMessageA
USER32.PostQuitMessage
USER32.PtInRect
USER32.RegisterClassA
USER32.ReleaseDC
USER32.SetCursor
USER32.TranslateMessage
USER32.UpdateWindow
USER32.wsprintfA
WINMM.mciSendCommandA
WINMM.mciSendStringA
WINMM.mixerClose
WINMM.mixerGetControlDetailsA
WINMM.mixerGetLineControlsA
WINMM.mixerGetLineInfoA
WINMM.mixerGetNumDevs
WINMM.mixerOpen
WINMM.mixerSetControlDetails
A oto lista odkrytych przezemnie procesów:

Kod: Zaznacz cały

"         (((((                "
" "
"!%s "%s""
"!%s %d "
"!%s %d %d %d "
"!%s %s"
"-"
"""
"%2.2d:%2.2d"
"%d x %d Pixel"
"%d"
"%d.%d.%d.%d"
"%i"
"%i%%"
"%i/%i"
"'%s' %s"
"%s [%d]"
"%s [%s]"
"%s%s"
"%s(*%d):"
"%s(V%s)"
"%s: "
"%s's Game (V%s)"
"."
"/ban %s"
"/kick %s"
"/msg %s "
"/stats %s"
"]_^["
"`aJ"
"|"
"+"
"<"
"<COL 4>%s|"
"<COL 4>ERROR&#58; %s|"
"<COL 4>ERROR&#58;Cannot create direct "
"<COL 4>ERROR&#58;Cannot create session!|"
"<COL 4>ERROR&#58;Cannot find session "
"<COL 4>ERROR&#58;Failed to create "
"<COL 4>ERROR&#58;Failed to initialize "
"<COL 4>ERROR&#58;Failed to join session!|"
"<COL 4>ERROR&#58;Failed to query lobby2 "
">"
"1.52 REL"
"Add-on mission no.%d"
"AUTOSAVE"
"AVIStreamBeginStreaming&#40;&#41;"
"BMHD"
"BODY"
"briefing\Miss%2.2d"
"C"
"c&#58;"
"Cannot get avi stream"
"Cannot open avi file"
"CD_VOLUME"
"CMAP"
"COL"
"Copyright by JOYMANIA-Entertainment "
"data"
"data\defines\houses.dat"
"data\defines\mapelem.dat"
"data\defines\pattern.dat"
"data\defines\unit.dat"
"data\gfx\fonts\antiqua.fnt"
"data\gfx\fonts\briefing.fnt"
"data\gfx\fonts\game.fnt"
"data\gfx\fonts\grey.fnt"
"data\gfx\fonts\kmlobby%d.fnt"
"data\gfx\fonts\maina.fnt"
"data\gfx\fonts\mainb.fnt"
"data\gfx\fonts\mainmapgold.fnt"
"data\gfx\fonts\metal.fnt"
"data\gfx\fonts\mini.fnt"
"data\gfx\fonts\outline.fnt"
"data\gfx\fonts\won.fnt"
"data\gfx\gouraud.dat"
"data\gfx\h2lremap.dat"
"data\gfx\map.bbm"
"data\gfx\mapgold.lbm"
"data\gfx\pal%d.bbm"
"data\gfx\remap.dat"
"data\gfx\remap2.dat"
"data\gfx\res\gui.rx"
"data\gfx\res\guimain.rx"
"data\gfx\res\houses.rx"
"data\gfx\res\trees.rx"
"data\gfx\res\units.rx"
"data\gfx\setup.lbm"
"data\gfx\setup2.bbm"
"data\gfx\text%d.dat"
"Data\Gfx\Video\%s.avi"
"data\gfx\Video\KAMLOGO.avi"
"data\gfx\Video\publish.avi"
"data\misc\setup.lib"
"data\misc\text.lib"
"data\mission\dmission%d.dat"
"data\mission\mission%d.dat"
"data\mission\mmission%d.dat"
"data\mission\smission%d.dat"
"data\save\game%3.3d.sav"
"data\save\gamem%3.3d.sav"
"data\save\saves.dat"
"data\save\savesm.dat"
"data\save\temp.sav"
"data\sfx\songs\track_%2.2d.sng"
"data\sfx\sounds.dat"
"Data\Sfx\Speech\%s.snd"
"Data\Sfx\Speech\%s\%s%d.snd"
"data\temp.bnk"
"DD&#58;This object is already initialized"
"Doing nothing"
"DPlay-Error&#58; Unknown Error."
"DPSYS-ADDGROUPTOGROUP"
"DPSYS-ADDPLAYERTOGROUP"
"DPSYS-CHAT"
"DPSYS-CREATEPLAYERORGROUP"
"DPSYS-DELETEGROUPFROMGROUP"
"DPSYS-DELETEPLAYERFROMGROUP"
"DPSYS-DESTROYPLAYERORGROUP"
"DPSYS-HOST"
"DPSYS-SECUREMESSAGE"
"DPSYS-SESSIONLOST"
"DPSYS-SETPLAYERORGROUPDATA"
"DPSYS-SETPLAYERORGROUPNAME"
"DPSYS-SETSESSIONDESC"
"DPSYS-STARTSESSION"
"ERROR"
"ERROR&#58;Cannot create session!"
"fmt "
"Game started|"
"ICDecompressEx&#40;&#41;"
"ICDecompressExBegin&#40;&#41;"
"ICLocate&#40;&#41; No Decompressor found!"
"Intro"
"INVALID_SYSTEM_MSG"
"JOYMANIA"
"K&M Ladder"
"K&M"
"Knights&Merchants TPR"
"l"
"LANGUAGE"
"lost"
"M1"
"M2"
"M20"
"M5"
"M6"
"menushot.pcx"
"MIDI_VOLUME"
"militia"
"MOUSE_SPEED"
"MUSIC"
"MUSIC_TYPE"
"NewUser"
"NG_PLAYER_NAME"
"nix"
"NOCDKEY"
"NoName"
"Not enough memory to allocate "
"O "
"O %s"
"OUTRO"
"OUTRONEW"
"PALETTE"
"PDT"
"play MUSIC notify"
"PLAYER_NAME"
"PST"
"RESOLUTION"
"SCROLLING"
"SELECT"
"server.fsgs.net"
"setup.cfg"
"shot%.3d.pcx"
"SOUND_VOLUME"
"stop MUSIC"
"SVWj"
"SYS_NET_DPLAY&#58;&#58;GetMessage&#40;&#41;&#58;Message "
"Track %d"
"Unknown"
"V%s "
"victory"
"VIDEO"
"X"
"x"
"X"
"XX"
Przepraszam, za długość postu, ale to i tak kropelka z całości :P:P
Awatar użytkownika
PinCheR
Użytkownik Forum
Posty: 256
Rejestracja: 05 cze 2008, 10:38
Lokalizacja: Warszawa

Post autor: PinCheR »

Jestem pod wrażeniem. Myślałem, że to kolejny projekt nie do ukończenia (z różnych powodów, głównie braku chęci), a jednak się myliłem aczkolwiek nie dzielmy skóry na niedźwiedziu. Dopóki nie zobaczę koparek, nie uwierzę (że się tak wyrażę).
KAMPANIA:
Awatar użytkownika
Syriusz
Użytkownik Forum
Posty: 35
Rejestracja: 08 maja 2011, 14:02
Lokalizacja: Jaworzno

Post autor: Syriusz »

Potrzebuję pomocy... mam mapę kampanii... jak rozmieścić lokalizację misji na tej mapie, aby nie były ułożone tak jak w TSK ????

edit///

Pytanie nie ważne przepraszam za spam :/:/ jak moderator może niech usunie ten post, nie będę sobie wątku zaśmiecał :P:P:P Już doszedłem do znaczników na mapie :P
Ostatnio zmieniony 22 maja 2011, 18:46 przez Syriusz, łącznie zmieniany 1 raz.
Awatar użytkownika
Phoenix_PL
Użytkownik Forum
Posty: 68
Rejestracja: 08 sty 2011, 18:00

Post autor: Phoenix_PL »

Lokalizację misji? co masz na myśli :zamurowany:
Woot...
Powracam ^^
kuba11100
Administrator Forum 
Administrator Forum 
Posty: 1667
Rejestracja: 18 sie 2008, 13:57
Lokalizacja: Polska
Kontakt:

Post autor: kuba11100 »

Obstawiam, że chodzi o punkty i flagi na ogólnej mapie (pokazywanej razem z odprawą).

A tam kasować... ;-) Może będziesz chętny podzielić się wiedzą? Kilku już się kiedyś o zmianę tego pytało.
Pozdrawiam,
kuba11100

Strefa KaMMirror misji
ODPOWIEDZ