Potzrebna pomoc - stworzenie narzędzia do modyfikowania gry

0

Witam Was
Na wstępie napiszę, że nie jestem programistą (z pisaniem miałem jedynie małą styczność), natomiast jestem fanem gry strategicznej Close Combat. Jest to gra dająca duże możliwości modyfikacji za pomocą danych zawartych w kilkunastu plikach .txt.
Problem polega na tym, że wydawca gry oczywiście udostępnił te pliki, powiedział co i jak, ale jest to strasznie niewygodne w użyciu. Pytanie do Was – czy ktoś w ramach podwyższania swoich umiejętności nie chciałby napisać drobnego narzędzia ułatwiającego życie graczom w Close Combat:) Będzie wychwalany po wsze czasy;)

Do rzeczy:
Close combat jest grą taktyczną na poziomie drużyny z elementami strategicznymi na poziomie dywizji. Mówiąc po ludzku – na głównej mapie przesuwamy dywizji dbając o zaopatrzenie itp., a następnie rozgrywamy walki już w polu. Problem polega na tym, że o ile gra jest świetna, o tyle wydawca już nie:) Wydaje produkt wybitnie rozbudowany z wybitnie dużą ilością niedociągnięć, które jednak mogą być zmodyfikowane.

Przykład: niemiecki czołg Panther (jest to okres lądowania Aliantów w Normandii). Z danych historycznych wynika, że pancerz przedni Pantery penetrował pocisk wystrzelony z ulepszonego działa Shermana z odległości bodajże maksimum 150m. W grze, programiści się kropnęli i dali taki przedni pancerz, że by go chyba sam Abrams nie przebił. Co wówczas musi zrobić gracz, aby nie dostać szału jak mu Shermany co i rusz wybuchaja? Musi zrobić tak:
W pliku weapons.txt musi odnaleźć odpowiednią komórkę odpowiedzialną za pancerz i zmienić jej wartość. Nic trudnego, to da się zrobić. Ale sytuacja komplikuje się, gdy chcemy edytować tzw Forcepools, a więc nasze dywizje. Z danych historycznych wynika, że na tyle i tyle Shermanów było tyle i tyle Panter. Na tylu i tylu Niemców tylu i tylu aliantów. Na tylu grenadierów tyle drużyn z Brenami itd. Itp. Do tego trzeba wziąć pod uwagę aby gra była grywalna, a jednocześnie chociaż w przybliżeniu zgodna z realiami historycznymi.

Są następujące pliki .txt:
Vehicles.txt – opisuje same pojazdy – pancerz, rodzaj broni głównej, czy ma działo, broń poboczna szybkosc ruchu, ochrona członków załogi, wielkość, wysokość, rodzaj pojazdu i wiele wiele innych. Ponad chyba 40 danych dla każdego pojazdu
Weapons.txt – opisuje każdą broń: waga, zasieg, przebijalność każdego rodzaju pojazdu, kto może używać, przeciwko czemu, ilośc amunicji itd. Itp. Znowu ze 30 zmiennych
Soldiers.txt – opisuje każdą funkcję żołnierza (nie osobowo, ale stanowiskowo – a więc np. operator bazooki). A więc jego standardowe wyszkolenie (ma potem dodawane modyfikatory za przynależność do danej dywizji – co innego Rangersi a co innego mięso armatnie), jakiej broni używa jako głównej (pobrane z weapons.txt) a jakiej jako pobocznej, jaki ma „pancerz” itd. Itp. Znowu mnóstwo statystyk.
Alsteams.txt i gerteams.txt – zbiera tych powyższych w drużyny. A więc np. drużyna Command będzie się składała z dowódcy, zastępcy i 3 żołnierzy. Do tego opisuje rodzaj munduru itp
Fpools.txt – zbiera te powyższe drużyny razem i tworzy dywizje. Ile i kogo ma być w dywizji
BGroups.txt – opisuje dywizje powstałe w fpools – a więc kto dowodzi, jakie współczynniki ma dywizja, jak szybko si przemieszcza i parę innych

Teraz jak się tworzy armię od zera:
1). Tworzymy „klasy” żołnierzy, a więc edytujemy plik soldiers.txt:
Otwieramy plik weapons.txt i myślimy jakich to sprzętów nasi bohaterowie będą używać. Wybieramy sobie różne karabiny, bazooki, pistoelry, Steny itd. I skrupulatnie na kartce zapisujemy numerki. Np. Sten ma numer 22, a bazooka 38.
2). Tworzymy drużyny, a więc edytujemy plik alsteams.txt (dla drużyn aliantów), a wieć 2-8 osobowe plutony składające się z naszych powyższych chojraków z pliku soldiers.txt
Mając klasy żołnierzy, a więc wiedząc że „operator” bazooki ma taką i taką bazookę z taką i taką ilością amunicji, tworzymy drużyny. Np. drużyna AT (Anti Tank) będzie się składać, podobnie jak w rzeczywistości, z celowniczego i tego co nosi pociski:) Dodatkowo możemy dodać dowódcę drużyny.
A więc spisujemy z pliku soldiers.txt, że dowódca drużyny ma numer taki, celowniczy (a wiec ten który nosi bazooke) taki i jakiegos jeszcze leadera z o numerze jakimś tam. I edytujemy plik alsteams. Potem dokładamy no Command unit, infantry unit, assult unit itd.
Jeśli chcemy tworzyć drużyny “zmechanizowane” a więc np czołg Sherman, dodatkowo musimy sięgnać po plik vehicles, aby wiedzieć kto w czym ma siedzieć… I pamiętać, że MarkIV ma taki numer, a Sherman taki.
3). Mamy drużyny, teraz trzeba ich zabrac razem. Stworzyliśmy szereg drużyn w alteams, znamy ich numery, to teraz edytujemy plik forcepool.txt, a więc że 101 Powietrzno Desantowa będzie miała 18 drużyn AT, 3 czołgi Stuart, 20 command units itd. Musimy jednak cały czas sięgać po karteczki itd.
4). Majac już uzupełnione dywizje, możemy je opisać kto nimi dowodzi itd.
Reasumujac: trudne to nie jest, powiedziałbym nawet banalne, ale starsznie pracochłonne. Strasznie. I łatwo bardzo o błąd, który powoduje wieszanie się gry. Kiedyś, w starszej wersji gry było narzędzie nazwane Qclone czy jakoś tak – niestety nie współpracuje ono z nową wersją, a dokładniej z plikami .txt. Narzędzie bardzo proste, które zamiast suchych liczb podaje nazwy co i jak. Zdjecie w załączniku. Wprawdzie służyło tylko do edycji forcepooli, ale nic nie stoi na przeszkodzie aby podobnie zrobić edycję samych drużyn.

Jeśli ktoś dotarł do tego miejsca, to już wie czego my, gracze Close Combat potrzebujemy – narzędzia co nam odczyta z plików txt co jest czym, zamiast numerków poda nam pełne nazwy drużyn najlepiej z informacją co w danej drużynie jest, pozwoli na zasadzie drag and drop przenieść druzyny do forcepoola, gdzie tylko wpiszemy numerki ile czego i na końcu wreszcie automatycznie zapisze to w pliku forcpool.txt.

Na podobnej zasadzie chcielibyśmy mieć narzędzie do edycji drużyn – a więc lewa kolumna nazwa drużyny jaką edytujemy, środkowa dostępne klasy żołnierzy, które drag and dropujac przenosimy do prawej kolumny. I zapisujemy jako alsteams.

Zdjęcie w załączniku.
Pomozecie? Co w zamian do uzgodnienia :)

Warto zerknąć aby zrozumieć co napisałem:
[url]ftp://ftp.matrixgames.com/pub/CloseCombatModernTactics/tools/tLD_Workbook_v13.zip[/url]

[img]http://www.mathilde.pl/forcepool_.jpg[/img]

0

Ja też piszę przydługie posty, dlatego przez Twój przebrnąłem. Ale widzę że to sporo roboty i ja się raczej nie
podejmę tego, mimo że mam wolny czas, ale taki program musi pisać ktoś, kto poznał już samą grę i będzie
mu łatwo to od razu testować. Dla ścisłości możesz jeszcze spakować (skoro to są pliki tekstowe to pewnie za
wiele nie zajmą) pliki tekstowe i wrzucić gdzieś żeby ewentualnie ktoś kto się tego podejmie poza opisem - w
masie arkuszy Excela miał jeszcze wizualnie pokazane jak wyglądają te dane w plikach tekstowych (mogą jak
masz być jakieś oryginalne forcpool.txt i dla Aliantów oraz Niemców). Swoją drogą co za dziwny wydawca, że
nie nakłonił producentów do stworzenia edytora. Sami na pewno tworząc te pliki nie klepali cyferek na ślepo i
z pewnością używali jakiegoś napisanego przez siebie edytora. A z zagranicznych graczy, nikt nic nie napisał?

0

No cóż - już go od czci i wiary (tegoż wydawcę) odsądzali. I nic. Stąd ten mój post... CHyba ze chcą wydać edytor za $$ wówczas zrobimy im psikusa:)

Chyba że faktycznie nic nie mają i wówczas autor tego narzedzia im go zaproponuje:)

Pliki txt spakowałem i są tutaj: <url>www.mathilde.pl/BASE.zip</url>

0

Ja się tego nie podejmie, może namów polską społecznośc tej gry jak macie pewnie jakieś forum polskie lub
zagraniczne, to niech się ludzie zrzucą, a wcześnie zleć to w dziale Praca i dowiedz się za ile ktoś to może
zrobić, o ile poradzi sobie ze zrozumieniem Twoich (innych ludzi ze społeczności gry) założen co do tego w
jaki sposób program ma działać. Bo te pliki co dołączyłeś raczej łatwo jest przetworzyć. Kolejne kolumny z
tego co widziałem są zawsze oddzielone tabulatorami. Ale z tego co pobieżnie patrzyłem to pliki od broni i
pojazdów przy niektórych rzeczach nie mają ostatnich 2 lub 3 lub 4 kolumn, nie wiem od czego ro zależy,
nie patrzyłem do tej specyfikacji akurat w Excelu. Faktem jest że edytowanie tego ręcznie jest ciężkie, bo
kolumn jest na prawdę mnóstwo i ćiężko to przewijać w każdym edytorze tekstowym, a później na szybko
zmieniać na coś innego i jeszcze żeby tabów nie uszkodzić. Wiesz, ja tutaj masę rzeczy pisałem na forum
za kogoś, ale cały program ktory jest żłożony tak jak to co chcesz osiągnąć raczej nie napiszę. Ostatnio w
ogóle nie chce mi się przysiąść do Delphi żeby napisać prosty program który poptawi nagłowki plików rar w
przypadku gdy te nieprawidlowo ściągną się z rapidshare i przez "Rar!" mają jakieś "htmlowe śmieci", a co
dopiero bawić się w robienie edytora do gry o ktorej się nie ma pojęcia. Ja też jestem aktywnym nazwijmy
to członkiem Polskiej społeczności gry Sensbile World of Soccer. Do SWOSa są Edytory, ale ludzie chyba z
własnej analizy je napisali, bo Sensible Software nie udostępnia kodu gry na Amigę, a szkoda bo pewnie z
palcem w... ktoś zrobił by wersję działającą na XP, a nie taki gniot jak 2006 z wielkimi głowami albo tylko
w klasycznym wydaniu jak na Amidze pod XBoxa tylko. Napisałem wprawdzie program z bazą numerów GG
graczy aby ulatwić im kontakt poprzez komunikator. Napisałem też program ktory użyto do rozegrania fazy
grupowej na Amidze I PC na ostatnim turnieju offline we Wrocławiu. Ale jednak edytor do danych drużyn i
to całkowicie od nowa nie wiem czy bym napisał. Pewnie by mi się nie chciało. Na szczęście w przypadku
SWOSa nie muszę. Życzę Tobie aby może w Waszej społeczności znalazł się programista z pewną ilością
wolnego czasem (którego to wielu brakuje) i coś dla Was sklecił ewentualnie jakiś programista który by to
co chcesz zakodził za jakieś wynagrodzenie. Kończąc mój przydługi post pozostaje życzyć Ci powodzenia.

0

olesio: Excel -> CVS -> odczytywanie jak zwyczajny plik tekstowy, ze zwróceniem uwagi na wykorzystany separator.

Problem ze znalezieniem chętnych do pomocy polega na tym, że program do napisania jest zarówno prosty, jak i czasochłonny (mimo wszystko trzeba obsłużyć X danych, i nie jest to ani kilka, ani kilkanaście). Ogólnie mówiąc: mało ambitne.

0

Ja tam się na Excelu słabo znam i CVSie to w ogółe chyba. W Delphi to tworzyl bym jakis typ rekordowy
dla poszczególnych pozjazów czy tam żołnieży. Zapisywał nazwę jako pierwsze pole, a reszte cech bym
pobierał z pliku i później zapisywał. Ale danych do obsłużenia jest faktycznie sporo i myślę, że napisanie
takiego edytora nawet za dofinansowanie będzie fajne tylko dla kogoś, kto gra w taką grę na codzień.

0

Może ja będę miał wreszcie okazję przypomnieć sobie Pascala ze szkoły sredniej;)

0

Błąd - jest osoba zainteresowana:)

0

To ja polecam bardziej Delphi niż Pascala. Jak znajdzie się ktoś chętny albo Ty to zapoznaj go (albo się) z
zawartością archiwum pod poniższym adresem. Zrobiłem proste wczytywanie broni i jej zapis oraz edycję.
I z moich testow wynika że wczytuje oraz zapisuje ok. Pozostaje oczywiście dorobienie zmian tylko takich
wartości na ktorych Tobie zależy a nie wszystkich 116 wartości. Oczywiście już jak ktoś przebrnie przez
specyfikację w Excelu i doczyta jakie dozwolone wartości można podać to zamiast Pola SpinEdit do edycji
można użyć ComboBoxs (jeżeli wartości do wyboru jest tylko kilka) lub pozostawić wartość numeryczną do
wpisania jeżeli przedział wartości jest duży. Teraz SpinEdit akceptuje cyfry od -1 do 9999. Dodałem też w
sumie banalną rzecz w Delphi z użyciem klas gotowych a mianowicie zapis i odczyt z pliku typu ini ścieżek,
z jakich wczytujesz i zapisujesz plik weapons.txt. Język GUI programu oraz komunikaty zrobiłem in english
(na tyle ile znam ten język :)). Kod programu jest sformatowany i część jest po polsku więc chyba myślę,
że nie wymaga komentarza. Teraz znasz zadadę działania wszystko opiera się na TList oraz klasie, którą
nazwałem TWeaponClass. Lista przechowuje obiekty, a takim obiektem jest właśnie TWeaponClass. No to
napisz czy coś Ci to dało. Nie mogłem spać to wymodziłęm taki program przez jakieś 3-4 godziny w nocy.
Może zapis pliku jest zrobiony trochę przekombinowanie, ale zapisując w taki sposób uzyskałem - taki sam
plik jak oryginalny (oczywiście nie przeprowadzając zmian). Dlatego myślę że może zostać. Kod otworzysz
i skompilujesz bez problemów w Delphi 7, a może nawet staszym lub w jakimś nowszym. No to idę spać :)

http://www.speedyshare.com/422939894.html
0

Super - właśnie o coś takiego nam chodzi. Co tu zrobić abyś cierpiał na 2-3 dniową bezsenność? ;)
A tak poważnie - chyba lepiej jest zrobić to uniwersalne i mieć możliwość edycji wszystkiego - chyba że w takcie uruchamiania programu można byłoby ustawić preferencje co będziemy modyfikować - i reszty nie wyświetlać.

Odnośnie możliwych wartości: abyście mnie dobrze zrozumieli - priorytetem jest stworzenie narzędzia do tworzenia Forcepool'i, a więc tych naszych dywizji - zapisanych w fpool.txt.

Plik ten (fpool.txt) pozyskuje dane odpowiednio z alsteams.txt i axsteams.txt (alianci i niemcy) - a dokładniej pozyskuje numery pod jakimi jest dana drużyna. I tak np |10|0 oznacza 10 druzyn spod numeru "0". Na obrazku chyba bedzie to prosciej:

user image

Dzięki za prototyp!!

0

Ja mam dużo czasu na rencie, a że siedze po nocach tak jak teraz, to później odsypiam w dzień często. Co
do edycji, to myślałem że edycja broni czy jednostek też się ludziom grającym w Close Combat przyda, bo
w sumie po kodzie widać że nie jest to takie trudne. Jakbym wiedział które wartości (chodzi mi tu o numery
kolumna w specyfikacji w Excelu w arkuszu Weapons). Bo chyba nie jest konieczne edytowanie 116 wartości
i na przykład taką wartość jak klasę broni w pierwszej kolumnie po nazwie się nie zmienia. Gdybyś mi podał,
na przykład w przypadku broni chce mieć możliwość zmian kolumn 3, 5, 8 itd to mógłbym to poprawić aby w
ListBoxie po prawej pokazywały się do zmian tylko wybrane wartości bo jak sam wspominałeś wcześniej -to
w przypadku bodajże jednostek takich wartości jest tylko z 35 (w pliku jest ich o wiele więcej w kolumnach).
A co do edycji tego fpools.txt to trochę kombinacji by było, bo program który podajesz za wzór, używa do
dodawania jednostek TreeView czyli drzewka, a ja takowe średnio umiem obsługiwać w Delphi. Uzywałem ów
komponentu tylko w jednym programie do wyświetlania kategorii ikon, a i tak najważniejszą procedurę, która
dodaje eleemnty podesłał mi jeden gosciu z innego forum. A i tak myślę, że skoro istnieje edytor taki jak na
zrzucie ekranu pokazałeś tylko że ma pare niedociągnięć i nie współpracuje z nowszymi plikami danych - z tej
wersji gry jaka dostępna jest obecnie - to może da radę skontaktować się z autorem/autorami i poprosić o
wydanie nowej wersji. Ja póki co mogę dopracować edycję własności broni czy tam jednostek. Tylko muszę
wiedzieć jakie wartości (numery kolumn ze specyfikacji w Excelu) są dla ludzi ważne, czy zostawiamy tak jak
jest, ale wtedy jeszcze muszę dorobić listę taką jak do wyboru rozszerzeń w dialogach do otwarcia pliku - na
przykład i na niej dodać jakie możliwości ustawien ma dana własność broni czyli -1 to cośtam, 0 to już cosik
innego, a 1 to jeszcze coś innego. Bo przy edycji posługując się samymi cyframi to trochę ciężko. Jednak w
obecnej chwili nie mam pomysłu na edycję fpools.txt musiałbym może zobaczyć specyfikację w Excelu, bo w
tej chwili nie patrzyłem czy jest opsiany ten plik oraz mieć pliki z danymi jednostek ktorych używa ten soft z
Twojego zrzutu ekranu, bo tych plików nie wystawiłeś, a do mnie najlepiej "przemówiły" specyfikacjia w xlsie
plbus to co zobaczyłem sam w przypadku pliku weapons.txt. W razie czego - przykłądowy kod już masz :)

0

Edycja broni będzie jak najbardziej potrzebna - robienie zmian jest dość upierdliwe nawet w excelu...

Edytuje się kolumny:

6: Valid Targets
7
8
9
10
18 Assult fire
19
25-do końca - zasiegi, siła rażenia itp - tutaj nie trzeba "ściągawki" jakie są wartości dopuszczalne

Idealnie, tak jak pisałeś, jeśli byłaby lista możliwości co można wpisać przy danej specyfikacji broni. O ile zasięg tego nie wymaga, to już ściągawka z Valid Target by się przydała. Czy na przykład możesz jakoś zrobić tak, aby cały pierwszy wiersz z excela "instruktażowego CC LongestDay Workbook v13" był w Twojej aplikacji? W sensie jak wybieram np pierwszą kolumnę (po zmianie Valid Targets) to pojawia się "chmurka" albo nawet dodatkowe pole, w którym jest: "Valid targets: 0 = None, 1 = Personnel, 2 = Vehicle, 3 = Vehicle & Personnel, 4 = Terrain, 5 = Personnel & Terrain, 6 = Vehicle & Terrain, 7 = All"

Jeśli chodzi o edycję forcepool'i - dowiedziałem się, że jest narzędzie dostępne w excelu - trochę toporne, ale jakoś działające. Możesz zerknąć na nie tutaj: http://www.beleggingsleer.be/CCtLD/
Ponadto problem spodobał się jednemu z forumowiczów, więc zakładam że aplikacja do forcepooli będzie.

Dzięki wielkie za edytor broni - dopisz swoje dane w programie aby każdy wiedział kto jest Stwórcą :)

0

Spoko edycje broni jeszcze dopracuje, później podeśle nowszą wersję. Co do wlasności wyboru to raczej
zro`ie to w taki sposób, że dla wartości z kolumn od 25 wzwyż będzie się edytowało liczbę tak jak jest to
zrobione teraz, a dla wcześniejszych będzie lista rozwiajana w dół tak zwany ComboBox no i z niego będzie
Użytkownik wybierał jaką własność nadać. Tylko jeszcze muszę pomyśleć jak do "zuniwersalizować", żeby
program miał zakodowane wartości bo czasem pierwsza własność wybrana z listy ma zapisać liczbę zero, a
czasami będzie to minuse jeden. Także dla wartośći poniżej 25 będzie lista rozwijana w dół - chyba tak to
rozwiązę, a pole edycyjne z cyframi będzie wtedy się robiło nieaktywne. A dodam przycisk About i będzie
informacja o mnnie oraz dane kontaktowe do mnie. Bo póki co nie chce mi się spać to oglądam film w TV
aktualnie, ale pewnie później przy tym posiedzę w nocy i podeślę linka do wersji 0.002 edytora tych broni.
A edycję tych orcepool'i może zrobi ten osobnik ze Społeczności CC, ktory się tym tematem zainteresował.

EDIT: Zobacz tę wersję na: http://www.speedyshare.com/961281558.html - to jest wersja 0.002 i o ile
Ciebie dobrze zrozumiałem tylko dwie kolumny 6 oraz 18 mają mieć możliwosć wyboru wartości z listy, a
pozostałe poprzez wpisanie wartości tylko jeszcze jest pytanie czy powinienem dla pozostałych kolumn tu
dać jakieś zakresy od - do. Bo większość wartości jest powyżej 0 do 9999 ale niektóre mogą mieć -1. To
jak mi napiszesz które, to będę wiedział co jeszcze poprawić. Jak to już zrobię to może zajmę się później
Vehicles oraz Soldiers. Tylko tutaj również potrzebuję od Ciebie informacji, tak jak przy broniach jakie to
kolumny ma mieć możliwość edytować użytkownik oraz w przypadku których mają być wybór cyfrą, a w
jakich z listy. Jeżeli spojrzysz na źródło to brzydko to rozwiązałem w module property_lists_consts.pas,
jak uzyskam informację jak to zrobić poprawniej - to zrobię, a wtedy już dodawanie elementów do listy
w postaci ComboBoxa będzie ładniej zrobione. Zapytałem już na dwóch forach. A i postaram się zrobić
kod bardziej uniwersalny żeby łatwo móc go przenieść później w inne miejsca głownego modułu main,
dzięki czemu robiąc zakładki dla na przykłąd pojazdów czy żołnierzy itp będzie mi to łatwiej dodawać.

0

Jaka piękna ikonka:)

Jesli chodzi o kolumny to wybór z listy byłoby dobrze jakby dotyczył jeszcze How Mounted.
Miałbyś możliwość dodania tutaj okienka z tym opisem z pierwszego wiersza co jest czym?

Chyba się nie zrozumieliśmy odnośnie Assult Fire - on ma również wartość 0-1 (Can the weapon be fired while moving? 0 = False, 1 = True)
Zerknij na ten plik excela (workbook): ftp://ftp.matrixgames.com/pub/CloseCombatModernTactics/tools/tLD_Workbook_v13.zip i na jego pierwszy wiersz w przegródce weapons.

0

Ikonę wziąlem z chyba oficialnej strony :) Póki co niech będzie taka lepiej niż standardowa Delphi, dodałem
też opcje wyboru dla kolumny 111 z danymi broni. Poniżej masz link do wersji 0.003. Napisz czy tak może
byc, czy też lepiej by było jakby każda własność miała w tym polu pod "Property decsription" swoj opis, bo
to mogę zrobić oczywiście. A i jak chcesz abym rozwinął program o kolejne zakładki na przykład Soldiers no
i Vehicles. To podaj mi to o co prosiłem w poprzednim moim postcie. Czyli napisz listę Żołenierze - indeksy
kolum (według specyfikacji) do edycji to na przykład 5, 6 - wybót, 8, 11 - wybór, 22 - do końca i tak dalej.
To samo dla pojazdów. Tylko mi napisz właśnie przy kolumnach które mają być edytowane poprzez wybór
jakiejś wartości z ComboBoxa obok tekstu "Choose". No a jeśli są jeszcze jakieś uwagi co do działania tej
wersji edytora jeszcze to pisz. Postaram się najpierw usprawnić edycję tylko broni, a jak to będzie tak do
konca jak być powinno (według Ciebie, bo zdaję się na Twoją znajomośc gry), to dodam edycję innych txt.

http://www.speedyshare.com/934177935.html
0

Myślę, że lepiej aby każda opcja miała opis.
Dodatkowe zakładki (veh i soldiers) byłyby super. Myślę tylko o tym, czy nie zrobić tego uniwersalnego aby było jednak wszystko - na wszelki wypadek - może ktoś kiedyś zechce zamienić grafikę broni czy dać żołdakowi inny mundur - zmieniajac np teatr walk na np. na Włochy.
Pytanie za 100 punktów - czy można podczas uruchamiania programu zrobić zapytanie, albo wręcz jakiś plik konfiguracyjny, w którym będa zapisane preferencje użytkownika. Np będzie pole Preferences a tam lista z check boxami - co użytkownik chce zmieniać. Zaznacza checkboxy co tam potrzebuje zmieniać (np tylko i wyłącznie zasięgi broni i to te maksymalne), a następnie robi save i pownownie wgrywa plik Weapons czy jakikolwiek inny - i pokazują mu się tylko Max Range. Chodzi mi o uniwersalność rozwiązania.
Wówczas czy będzie to edycja weapons czy vehicles czy soldiers (aczkolwiek tu nie wiem czy się da tak prosto - bo do edycji soldiers jest już wykorzystywany plik weapons - a więc dane do edycji soldiers są zasysane z pliku weapons - chyba że właśnie zostaną zassane jako Property Description co w przypadku pliku soldiers.txt, będzą to kolumny weapons, wyświetlane jako dostępne bronie) - to będzie to to samo.

Tak, myślę, że jest to dla Ciebie prostsze, a dodatkowo zdecydowanie bardziej uniwersalne rozwiązanie. Tak naprawdę, idąć tym tropem (wyświetlając w property description zassanych danych z innego pliku), jesteś o krok od edytora forcepooli.

0

Plik forcepool ma tylko jedną rzecz "unikalną" - mianowicie wielkość dywizji zmienia się wraz z czasem. Chodzi o to, że w grze możliwa jest opcja "reinforce". Polega to na tym, że dywizja ma uzupełniane straty, ale nie do wartości poczatkowej, a do wartości "historycznej" z danego dnia. Jest to oczywiście przybliżenie, ale abyś miał pogląd o co chodzi:

W nocy, podczas rozpoczęcia operacji, wylądowały jednostki powietrzno desantowe - m.on. osławiona 501 Airborne. Po zajęciu celów, po jakimś czasie dostali wsparcie w postaci kilku lekkich czołgów - co było BARDZO przydatne oczywiście. Oczywiscie w dniu lądowania nie było takiej możliwości - spadochroniarze musieli oczyścić teren itd. Autorzy gry zasymulowali to więc zmiennym forcepoolem. Gdy więc gracz w trzecim dniu wciśnie przycisk reinforce, może się okazać, że dostanie 2 stuarty.

Możliwość reinforce jest opcjonalna - osobiscie w moich modach jej nie używam - dywizje są jakie są - z uwagi na zbalanoswanie gry. Wprowadzenie jeszcze możliwości reinforce powoduje duże problemy z wyliczeniem czy któraś ze stron nie jest zbyt mocna. Ale fakt - dodaje to samczku. Ale jest to tylko zasygnalizowanie takiej możliwości - jeśli będziesz się brał za forcepool wówczas to przybliżę. W dużym skrócie program sam powinien wpisac, że tego i tego dnia forcepool generalnie jest o 30% niższy od pierwotnego (w wyniku strat), zaokrąglany do dołu, ale np dodane są 2 czołgi. Ale nie wiem czy to nie jest już za duża zabawa.

Osobiście jak modowalem to robiłem tak, że każdy dzień był taki sam, a opcja reinforce była po prostu wyłączona.

Dodatkowo, jak się przyjrzysz plikowi forcepool, zobaczysz że w każdej dywizji ilość drużyn różni się nie tylko od dnia, ale i od poziomu trudności - ja osobiście ułatwiałem sobie życie i tak jak pisałem na górze - nie było znaczenia jaki to dzien czy jaki poziom trudności - zawsze było tak samo. I tak się gra tylko H2H

0

Dobra, to zrobię opisy dla każdego pola. A nad preferencjami bym musiał pomyśleć, ale wolałbym zostawić w
obecnej formie edycje każdej wartości jakie podałeś. Pewien problem jest w tym, że - z tego co widże bronie
mają inną ilość kolumn do edycji. Ale może coś wykombinuję. A z tym plikiem forcepool, to ja na razie dałem
sobie z nim spokój, bo chcę się skupić na edycji podstawowych rzeczy jak bronie, pojazdu czy żołnierze, a z
edycją tego pliku może i jakoś bym sobie poradził, ale nie nastawiam się póki co na to. Nie mam na to jakoś
pomysłu póki co, liczę że osoba z Waszej Społeczności weźmie się za to i coś wykobminuje, bo to problem
w moim odczuciu trochę złożony i poradzić sobie z nim może ktoś kto prócz programowania zna trochę grę.

EDIT: znowu nie chciało mi się spać w nocy to siedziałem i wymodziłem wersję ktorą zamiast 0.004 to
oznaczam numerem 0.01 :) Skok wersjowy polegał na tym, że teraz łatwiej jest dodawać nowe zakłądki
do PageControla na przykład z żołnierzami czy przedmiotami lub Pokazdami. Wystarczy skopiować na
nową zakłądkę wszystkie komponenty jedynie zmieniając ich nazwy z _1 na koncu na _2 lub inny numer
zakłądki. Poza tym należy dodać co potrzebn do modułu the_consts.pas. Teraz ułatwiłęm nieco samemu
sobie proces rozwijania aplikacji o kolejne elementy do edycji. Z tym forcepool pomyślimy, może to jak
wspominałem ktoś z Waszej społeczności zrobi. Teraz potrzebuję od Ciebie informacje w postaci takiej:
soldiers - jakie kolumny mają się z dostępnych pokazywać i które mają być ustawiane przez listę do
wybotu (napisz po numerze kolumniy z dokumentacji po prostu "wybór"). Taką samą informację podaj
mi proszę dla vehicles oraz elements. Jak sobie przeanalizujesz źrodło main.pas i the_consts.pas to na
początku zobaczysz że zrobiłęm klasę uniwersalną, która przy tworzeniu ma parametr KindClass i póki
co jest zrobiona obsługa ckWeapons, ale będzie w kolejności kolejnych zakładek ckSoldiers i tak dalej.
Całość wygląda tak jak poniżej. Chyba wszystko jasne. A tablica PropList - wczytywana jest z modułu
the_consts.pas. Poniżej przykładu klasy masz link do najnowszej wersji. Aha tylko jeszcze dwie sprawy.
Sprecyzuj do ktorej części Close Comabt w ogóle ten edytor tworzę. Najnowszje piątki jak rozumiem?
A i jak chcesz podaj mi tutaj swój numer GG to napiszę do Ciebie i możemy w razie konieczności się na
GG konsultować co zmienić w programie lub dodać :) Bo jak coś możemy też kontaktować się przez to
forum, ale widzę że Ty pewnie zaglądasz raz dziennie, a nie wiem czy pozostali chcą czytać ten wątek,
bo jest już dość rozdudowany, ale myślę że jak ktoś nie chce to po prostu zignoruje go. Ok, ide spać ;)

constructor TCCItemClass.Create(ClassKind : TClassKind);
var
  I : Byte;
begin
  TheName := '';
  case ClassKind of
    ckWeapons :
      begin
        SetLength(Col, 116);
        ShowCols := [6, 7, 8, 9, 10, 18, 19, 25..111];
        ComboBoxCols := [6, 18, 111];
        SetLength(PropList, High(C_WeapPropList));
        for I := Low(PropList) to High(PropList) do
        begin
          PropList[I] := C_WeapPropList[I + 1];
        end;
        for I := Low(Col) to High(Col) do
        begin
          Col[I] := EmptyCol;
        end;
      end;
    ckSoldiers :
      begin
      {Mniej więcej to samo co wyżej ale z tablicami i stałymi dla żołnieży}
      end;
  end;
end;
http://www.speedyshare.com/407997486.html
0

Niech żyją bezsenne noce:)
Jeśli chodzi o plik soldiers, to każda kolumna jest ważna. Dodatkowo, kolumny
7 - Crewed weapon
8 Primary weapon
9 Sec weapon
10 grenade
11 Hand to hand
powinny w polu opisowym mieć ściągawkę z pliku weapons. W tych kolumnach 7-11 wpisujemy numery broni, jakie nosi ze sobą żołnierz. Idealnie, jakby nawet pójść o krok dalej - niech opis zostanie opisem (aby nie łamać reguły i nie robić wyjątku), natomiast wybór broni był w postaci listy do wyboru.

Odnośnie jeszcze weapons, czytso "czepialsko":
"Can use bayonet" - zrób może tak jak assault fire jako true or false

Vehicles:
Niech tutaj również będzie wszystko (może poza trzecią kolumną -class) - w razie jakby ktoś chciał zmieniać także narodowości itp.
Tutaj będzie sporo odwołań do pliku weapons, podobnie jak z soldiers:
7-9 odwołania do weapons
60-63 odwołania do weapons
106-112 - ściągawką jest tablica Chance512 z zakłądki Reference Tables z pliku excel
115-116 - ściągawką jest tablica Chance128 z zakłądki Reference Tables z pliku excel
117 - powinna wynosić tyle, ile jest zamontowanych broni. A więc tyle wartości różnychod "-1" ile jest w kolumnach 7, 8, 9

Ale przy tym pliku widać, że preferencje są chyba sprawą konieczną - jeśli nie, to chyba bym tego nie dotykał - jest to w miarę proste, a już na pewno będzie prostsze w excelu jak się poukrywa "niechciane w edycji" kolumny. Ten plik ponadto jest bardzo rzadko używany.

Możemy rozmawiać na mailach w sumie - ale może ktoś chce kiedyś zobaczyc jaki jest proces pisania aplikacji:) jak cos moj email: mkojtych at poczta.onet pl

0

aha i jest to dla Close Combat Wacht am Rhein oraz Vlose Combat The Longest Day
Moje GG: 135903

0

Dobra, dzięki za informację. Będę musiał trochę pokombinować bo założyłem że procedura otwierania
kolejnych plików będzie taka sama, a tutaj trzeba przed otwarciem wymisić otwarcie pliku z brońmi, no
chyba że lista broni do wyboru dla żołnierzy oraz pojazdów ma być zawzze taka sama na sztywno - z
pliku weapons.txt - wzięta bez jego otwierania. Później pokombinuje i wydam nowszą wersję. Jakby
co możemy się nadal komunikować przez forum, ale jak coś napiszę wkrótce do Ciebie także na GG :)

0

Witam - odzywałeś się do mnie na GG? Bo właśnie otzrymałem informację, że ktoś się dobijał a ja nic nie widzialem - może i z Tobą tak było?

0

Nie pisałem chyba nic o ile dobrze pamiętam. Ale zapisałem sobie do pliku Twoje uwagi ostatnie oraz dane
na temat żołnierzy i pojazdów i wkrótce mam nadzieję coś ruszę z tym programem, bo ostatnio jakoś nic w
nim nie aktualizowałem. A i rozumiem że początkową wartością dla pół opisowych broni dla żołnierzy jest -1
czyli "not applicable", natomiast pozostałe warttości z pliku weapoins.txt 0 to pierwsza broń z tego pliku,
zaś 1 to druga, 2 to trzecia i tak dalej aż do końca i tutaj bronie mają być pobrane z listy weapons, tak?

0
olesio napisał(a)

A i rozumiem że początkową wartością dla pół opisowych broni dla żołnierzy jest -1
czyli "not applicable", natomiast pozostałe warttości z pliku weapoins.txt 0 to pierwsza broń z tego pliku,
zaś 1 to druga, 2 to trzecia i tak dalej aż do końca i tutaj bronie mają być pobrane z listy weapons, tak?

Wiesz co, napisz do mnie na GG, ale się Skypniemy aby tu nie zaśmiecac

0

Napisałem już do Ciebie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1