Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - HappyHardcore123

Strony: [1]
1
Na warsztacie / Instalator Dodatków
« dnia: 15 Maja 2007, 18:16:20 »
Chodzi o wpisy trainset w plikach .scn?

Wiem, ze jesli model nie istnieje fizycznie na dysku, symulator sie wywali. Ale jesli program start.exe mialby mozliwosc dynamicznej zmiany zawartosci tych trainset'ów (sprawdzajac czy dany model istnieje) mogl by "podmieniac" wpis brakujacego modelu, na ten najbardziej pasujacy.

Co do wpisów do jakichkolwiek plików: instalator nie tylko rozpakowywuje paczke do katalogu, ale i bez problemów mogl by dodawac/usuwac/edytowac takie wpisy. Jesli moze to zrobic czlowiek, dlaczego nie mozna tego nauczyc maszyny? Zwlaszcza, ze maszyna moze zrobic to bezblednie? Wiem, ze nie wszystko da sie zrobic.. ale dlaczego by nie odciazyc uzytkownika od zbednych czynnosci?

Cytuj
Instalacja dodatku:trasy, w której dodamy częściowo już pliki, gdzie dany user niektóre z nich ma.


Podczas, gdy w trakcie instalacji wystapi wlasnie "proźba" nadpisania pliku, zostanie on automatycznie zapisany do katalogu np. "backup".

Cytuj
Instalacja dodatku:Poprawinona jakaś tekstura modelu
tutaj podobny problem do pkt. 1

Jesli plik nazywa sie tak samo, nie widze zadnego problemu. Zostaje zrobiona kopia zapasowa (ktora bedzie mozna oczywiscie przywrocic, np. po usunieciu aktualizaji).

Nawet jesli plik zapasowy zostanie uszkodzony, badz usuniety, zawsze mozna przywrócic go z pliku paczki. Bo kto w sumie usuwalby te pliki?

Jesli chodzi o tworzenie dla tworzenia.. realizuje się w muzyce ;)

2
Na warsztacie / Instalator Dodatków
« dnia: 15 Maja 2007, 16:23:06 »
Moze i nikt nie będzie tych identyfikatorów przestrzegał, ale taki mechanizm w moim mniemaniu sie przyda.

Juz prawie skonczylem prace nad interfejsem programu. Wyglada on teraz tak:



Pozostało mi juz tylko napisac kod bibliotek, które rozpakowywuja dodatek do katalogu, zarządzaniem wersjami, bazą zainstalowanych dodatków.

Zastanawiałem się też nad rozróżnieniem w programie dwóch typów paczek: paczki głównej, oraz paczek aktualizacyjnych; jednak doszedłem do wniosku, ze moze to zastąpić mechanizm zależności:

na przykład:

mamy paczke o numerze 404, wersji 1, wydania 1

czyli taki id: 404.1.1.1

autor paczki, zamiast wydawac po każdej zmianie nową wersje, tworzy paczke ze zmienionymi plikami.

np. aktualizacje do paczki 404.1.1.1 mogly by miec takie identyfikatory oraz zaleznosci:

404.1.1.15 - wymagala by paczki 404.1.1.1
404.1.1.25 - wymagala by paczek: 404.1.1.1 i 404.1.1.15
404.1.2.30 - wymagala by paczek: 404.1.1.1, 404.1.1.15 i 404.1.1.25

Program podczas instalowania paczek z aktualizacja, dbałby o to, zeby instalowac pliki we właściwej kolejności, ustalonej przez autora danej paczki:

Innym mechanizmem instalatora bedzie możliwośc odinstalowania paczki, bądź jej wyłączenia.

3
Na warsztacie / Instalator Dodatków
« dnia: 07 Maja 2007, 17:21:48 »
Tak, Instalator nie zapewni pełnej zgodności z symulatorem, ani też bezpieczeństwa. Jednak w pewien sposób ułatwi samo instalowanie i zarządzanie dodatkami.

Cytuj

skomplikuje i tak już trudną sytuację jaka panuje w plikach symulatora. Idąc tym tropem instalator nie zagwarantuje poprawnego działania dodatku. Poprawne działanie dodatku może zapewnić tylko jego autor który zadba o właściwy dobór potrzebnych do działania plików, modeli i t p ......

Najlepszym wyjściem z tej sytuacji byłaby zgodność w dół wszystkich "dodatków" do symulatora. Wtedy istniała by niemal 100% pewność, że np. dana mapa zadziała tak i ze starszą wersją jakiegoś dodatku jak i z nowszą.

Ale do rzeczy:
Przez ten czas, który nie odzywalem sie na forum, cały program przeszedł " lekkie" zmiany.

Większość kodu programów została przepisana od nowa. Zmienil sie także sam wygląd instalatora.



Poprzednia wersja programu pozwalała na zainstalowanie jednocześnie tylko jednego pakietu. W przypadku większej ilości plików, program trzeba było uruchamiać od nowa (jeden z błędów TRS2004, poprawiony w TRS2006).

Priorytetowym zadaniem jest stworzenie mechanizmu sprawdzania autentyczności danego pakietu; tego mechanizmu nie moze zapewnic sam program. Potrzebna jest integracja z jakimś "systemem zarządzania użytkownikami".

4
Na warsztacie / Instalator Dodatków
« dnia: 07 Maja 2007, 07:52:19 »
Witam wszystkich ponownie.

Projekt nie został zarzucony

Pytacie, czy nie przerosły mnie problemy nad programem.. Tak przerosły mnie, te domowe..

Cytuj

jak rozwiązałeś problem zależności jednych pakietów od drugich i jaką zaplanowałeś ich strukturę (jedna duża paczka zawierająca wszystko vs podział na małe, atomowe części)?


Wszystko zależy od twórcy dodatku. Moze bez problemów spakować pojedyńczo każdy semafor, lub równie dobrze "wsadzić" je wszystkie w jedna paczke.
Cytuj

Cytuj

- jak planujesz rozwiązać temat wersjonowania (trasa A wersja 1, 2, itd) - zwłaszcza w konteście ew. zależności?

To zależy od autora wersji tras, a nie od tego co zaplanuje autor instalatora.

Musze jednak potwierdzić, że zależy to jednak ode mnie.
Na razie opracowalem taki system identyfikacji pakietów:

ID_AUT.ID_PACZ.ID_WER.ID_WYD.ID_BUD.KONTROLA

gdzie odpowiednio:

ID_AUT - liczbowy identyfikator autora (np. 6243523)
ID_PACZ - liczbowy identyfikator paczki (np. 9040)
ID_WER - wersja danej paczki (np. 2)
ID_WYD - identyfikator wydania (np. 4)
ID_BUD - identyfikator budowy (np. 415)
KONTROLA - pojedyncza cyfra kontroli

wszystkie liczby oddzielone są od siebie separatorem, w postaci kropki "."

przykładowy identyfikator paczki:

"6243523.9040.2.4.415.9"

Cytuj

- jaka jest struktura pliku z pakietem (to jakiś proste archiwum z XMLem z metadanymi w roocie, czy coś bardziej złożonego)?


Tak, plik paczki jest to proste archiwóm zip. Jest w nim spakowana cała struktura paczki (dokładnie taka sama jak w katalogu symulatora), oraz plik manifestu (ze wszystkimi informacjami potrzebnymi do instalacji.

Instalacja "paczki" to po prostu kontrolowane rozpakowanie zawartości paczki do katalogu symulatora, oraz dodanie odpowiedniego wpisu do bazy danych.

Cytuj

- czy dopuszczasz możliwość współistnienia różnych wersji pliku o tej samej nazwie (czytałem wypowiedzi w wątku, ale mimo to zadam pytanie) w kontekście sytacji trasa A wymaga 1. wersje pliku, trasa B wymaga 2. wersje pliku a obie są niekompatybilne?


Tak. Informacje o wymaganych do instalacji pakietach są zapisywane w pliku manifestu paczki, w sekcji "zależności". Instalator nie zainstaluje paczki do chwili, gdy wszystkie paczki zależnie od niej nie zostaną zainstalowane.

5
Na warsztacie / Q MaSzyna Consist Editor
« dnia: 03 Marca 2007, 20:16:07 »
Może to wina tego że mam zainstalowane Delphi, ale mi przy próbie kliknięcia na wpis składu wywala błąd

6
Na warsztacie / Instalator Dodatków
« dnia: 23 Lutego 2007, 22:04:18 »
Napisałem prawie cały kod odpowiedzialny za ładownie pliku z tłumaczeniami do programu:



Teraz zamiana któregoś z napisów nie będzie wymagała przekompilowania całego programu, ale zmiany wiersza w pliku.

Sam plik jest zapisany w formacie XML, dzięki czemu staje się łatwy w edycji (żadnych restrykcyjnych reguł w stylu "3 puste linie na końcu pliku" ;) )

Pozdrawiam, Karol

7
Na warsztacie / Instalator Dodatków
« dnia: 21 Lutego 2007, 20:35:34 »
Poczuwam się do zagwarantowania, że nikomu nic się nie stanie ;)

Jak już wcześniej pisałem, mechanizm wczytywania plików z różnymi wersjami językowymi napisze na końcu; dlatego część napisów jest po angielsku, a część po polsku.

Wziąłem pod uwagę komentarze Mariusz1970, i zrezygnowałem z porównywania plików.

Pozdrawiam, Karol

8
Na warsztacie / Instalator Dodatków
« dnia: 21 Lutego 2007, 20:01:40 »
Nie ma problemu ;)

Dodam mechanizm wybierania języka, ale najpierw muszę te programy napisać. W tej chwili prawie skończony jest instalator; drugi program ( do tworzenia paczek ) właśnie się pisze.

9
Na warsztacie / Instalator Dodatków
« dnia: 11 Lutego 2007, 14:35:43 »
Ok.

Właśnie zaprojektowałem wygląd okna, w którym będzie można tworzyć "paczkę".


Dodawanie plików będzie odbywało się na zasadzie "przeciągnij i upuść", nie tylko z okna programu, ale tez i z Eksploratora.

Dopiero zabieram się za pisanie kodu

10
Na warsztacie / Instalator Dodatków
« dnia: 10 Lutego 2007, 23:18:01 »
No i jest defaultowe :)

Tyle że jeszcze nie w pełni gotowe :/

Wprawdzie posiada podświetlanie składni różnych plików z symulatora, ale jeszcze nie "widzi" różnic.

W przypadku plików tekstowych muszę napisać parser, który będzie znajdował różnice.

Pliki innego typu (graficzne, dźwiękowe, itd.) zostawię sobie na później.

11
Na warsztacie / Instalator Dodatków
« dnia: 10 Lutego 2007, 22:37:30 »
Ja to rozwiązałem tak:

Jeśli instalator natrafi na plik który już istnieje, pokaże mu zawartość obu plików, tzn. istniejącego i instalowanego.

Ewentualnie (raczej ta metoda powinna być stosowana) autor dodatku oznaczy w paczce dany plik jako niebezpieczny; wraz z odpowiednim komunikatem do użytkownika ;)

12
Na warsztacie / Instalator Dodatków
« dnia: 10 Lutego 2007, 22:06:57 »
Witam!

  Piszę właśnie program do tworzenia, instalacji i zarządzania dodatkami do symulatora.

Program, wzorem Trainz'owego "Content Dispatchera", opiera się na własnym formacie danych (pliki *.mpm)

Instalator wygląda tak:


Link do programu:
http://www.shipyard-software.yoyo.pl/PackageManager.zip

Całość jest napisana w Delphi 7.

Program ma wyłączony kod odpowiedzialny za wypakowywanie zawartości paczki (nie jest jeszcze dopracowany)

Instalator trzeba uruchomić przeciągając plik *.mpm na ikone programu. Normalnie pojawi się niedokończone okno Managera.

Pozdrawiam, Karol

Strony: [1]