Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Skąd się biorą te rzeczy?
#1
Zawsze widzę ludzi publikujących kod C z udziałem rzeczy w przestrzeni nazw `fb` (Które zakładam jest FrostBite) i nazw klas takich jak` ClientSoldierEntity`. Gdzie ludzie uzyskują te klasy i kod z nich? Rozumiem, że istnieje SDK x64 na wiki z takimi klasami, ale zostało to zrobione w 2014 roku, więc jestem prawie pewien, że jest już dość przestarzały, nie?
Reply
#2
Większość nazw pochodzi z informacji o typie czasu wykonania. Możesz wyodrębnić te dane, gdy wykonasz inżynierię wsteczną. Ogólnie rzecz biorąc, klasy nie zmieniają się zbytnio po wydaniu gry, więc same klasy powinny być dokładne. Przy jakich korektach prawdopodobnie się jednak zmieniły.
Reply
#3
Gra Frostbite zawiera trochę informacji o klasach znanych jako "informacje o typie", jest to wariant DICE na temat informacji o typie biegu. Ta informacja o typie zawiera wiele informacji, w tym informacje o nazwach klas, a czasem o nazwiskach członków klasy, jako Odwróconych inżynierów staramy się używać "poprawnych" nazw klas, jeśli to możliwe, jeśli nie możemy uzyskać oficjalnej nazwy, robimy takie, które pasuje do odmrażający schemat nazewnictwa (uczysz się go szybko po hakowaniu FB od lat).
Reply
#4
Zacytować: Napisał stevemk14ebr Gra Frostbite zawiera trochę informacji o klasach znanych jako "informacje o typie", jest to wariant DICE na temat informacji o typie biegu. Ta informacja o typie zawiera wiele informacji, w tym informacje o nazwach klas, a czasem o nazwiskach członków klasy, jako Odwróconych inżynierów staramy się używać "poprawnych" nazw klas, jeśli to możliwe, jeśli nie możemy uzyskać oficjalnej nazwy, robimy takie, które pasuje do odmrażający schemat nazewnictwa (uczysz się go szybko po hakowaniu FB od lat). Jest to temat na temat, ale dlaczego niektóre gry mają niewiele do poznania danych rtti w czasie rzeczywistym? Pracowałem w niektórych grach, gdzie zobaczysz je wszędzie jak DayZ. Ale są pewne gry, których nie widzę.
Reply
#5
Zacytować: Originally Posted by maxkunes Jest to temat na temat, ale dlaczego niektóre gry mają niewiele do poznania danych rtti w czasie rzeczywistym? Pracowałem w niektórych grach, gdzie zobaczysz je wszędzie jak DayZ. Ale są pewne gry, których nie widzę. jeśli mówimy o standardowym C rtti, a nie implementacji niektórych dostawców, to jest to tylko wybór projektu. RTTI ma (małe?) Koszty ogólne, więc większość ludzi stara się używać go tak rzadko, jak to możliwe. Jednak są przypadki, w których jest to absolutnie konieczne, takie jak dynamic_cast od podstawy do pochodnej, może to być po prostu to, że każda gra, którą cofasz, ma projekt wymagający wielu bazowych rzutów bazowych i tak samo RTTI (gry z masywnymi listami encji przychodzą na myśl) lub odwrotnie.
Reply
#6
Zacytować: Wysłany przez disabilitor pierwotnie Większość nazw pochodzi od typu Run-Time Ogólnie rzecz biorąc, klasy nie zmieniają się zbyt długo po premierze gry, więc same klasy powinny być dokładne. Przy jakich korektach prawdopodobnie się jednak zmieniły. Ale na przykład patrzę teraz na wątek z łatą majową i widzę to: Zacytować: w ClientSoldierEntity wszystko jest przesuwane o 0x20 o ClientSoldierWeaponsComponent * m_soldierWeaponsComponent;
Reply
#7
Zacytować: Napisał stevemk14ebr Gra Frostbite zawiera trochę informacji o klasach znanych jako "informacje o typie", jest to wariant DICE na temat informacji o typie biegu. Ta informacja o typie zawiera wiele informacji, w tym informacje o nazwach klas, a czasem o nazwiskach członków klasy, jako Odwróconych inżynierów staramy się używać "poprawnych" nazw klas, jeśli to możliwe, jeśli nie możemy uzyskać oficjalnej nazwy, robimy takie, które pasuje do odmrażający schemat nazewnictwa (uczysz się go szybko po hakowaniu FB od lat). Ale nie polegaj zbytnio na imionach. Kiedy gra (i jej klasy) są w fazie rozwoju, ich cel często się zmienia, ale ich nazwy nie. Dlatego nazwa klasy często wprowadza w błąd i nie mówi (całej) prawdy. Znam (profesjonalnych) programistów, którzy nie potrafią czytać własnego kodu po kilku tygodniach
Reply
#8
Zacytować: Napisał pierwotnie MarcT9 Ale nie polegaj zbytnio na imionach. Kiedy gra (i jej klasy) są w fazie rozwoju, ich cel często się zmienia, ale ich nazwy nie. Dlatego nazwa klasy często wprowadza w błąd i nie mówi (całej) prawdy. Znam (profesjonalnych) programistów, którzy nie potrafią czytać własnego kodu po kilku tygodniach Nazwy klas gry Frostbite opisują to, co robią prawie dokładnie, nie znalazłem żadnych prawdziwych wyjątków. Może to być prawdą w przypadku oprogramowania o niższej jakości, ale nie w przypadku odmrożeń.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)