Hallo ich bin neu hier und wollte mal nachfragen ob hier noch irgendwas passiert oder ob alles eingestellt wurde? :-\
über eine kurtze rückmeldung würde ich mich freuen unter
dbgen@hotmail.de
Die Entwicklung des Hotel-Managers is im Moment pausiert. Es geht aber ganz sicher irgendwann weiter!
ich selbst hab gestern mal nach Spielen gesucht und bin dabei Auf Hotel-Manager gestoßen. und beim durchstöbern der Webseite hab ich den Quelltext entdeckt... Nun denn ich programmiere selbst mit VB (wenn auch VB 2010, Versehe aber auch VB6-Code relativ gut) und hab gleich mal den Code inspiziert. Eine Wahnsinnsarbeit hast du dir da gemacht! *Thunbs up* Ich finde es echt schade, dass so lange keine neue Version herausgekommen ist. :'( Mach weiter! P.S. Was sollte eigentlich das Personal jeweils machen? Ich könnte mir vorstellen, in meiner Freizeit nebenbei die Personalfunktion zu Programmieren ;)
Moin,
wenn überhaupt wäre es IMHO sinnvoller, den "HotMan" neu zu schreiben, in einer gescheiten Programmiersprache (C++) und vollständig objektorientiert. Für große Änderungen werde ich den VB6-Code nicht mehr anfassen. Ich habe mal vor einiger Zeit von einem Tool gelesen, mit dem man VB6-Code in VB.Net (also auch VB 2010) umwandeln kann - wenn das tatsächlich funktioniert, wäre das immerhin ein Schritt, den HotMan (mit viiiiiiiiel Refactoring) auf eine moderne Programmiersprache zu portieren. Generell würde ich aber eher alles neu schreiben und dabei auf ein wenig mehr Realismus setzen. ;)
Im Quelltext sind schon viele Hinweise, wozu das Personal dienen sollte (die einzelnen Personaltypen existieren schon irgendwo)... Putzkolonnen, um die Zimmer sauber zu halten, Sterne-Köche, um die Schlemmer anzulocken, Sicherheitsdienst, um Terroristen-Attacken zu entdecken und zu bekämpfen, etc. - da kann man sich viel ausdenken. Ich denke, im alten Forum (http://simon.deobald.org/smf/index.php/board,125.0.html) sollte sich dazu auch einiges finden lassen.
Wie ich gerade gemerkt habe ist so ein Modul zumindest in VB 2008, welches midestens 99%-kompatibel zu 2010 ist, enthalten...
EDIT: Das Programm (Code-Konverter) sagt, ich solle VB6 installieren, damit das Modul "vbolg.tlb" vorhanden ist. hat jemand nen Link?
EDIT2: Ich hab den verweis einfach aus der vbp-datei gelöscht. Und er hast brav zuende Konvertiert. mal gucken was jetz nicht mehr läuft...
EDIT3: Erstmal alles: 2Warnungen und -Bitte festhalten- 103 Fehlermeldungen!
Ich lade mal den Code hoch, weiß nur noch nicht wo(kann mir jmd. was empfehlen?)-allein krieg ich das nicht hin
vbogl.tlb sollte eigentlich beim Hotel-Manager mitinstalliert werden. Ansonsten gibt's die Type Library auch hier (http://home.pacific.net.hk/~edx/tlb.htm). Die Komponente wird für die OpenGL-Darstellung unter VB6 benötigt.
Die hohe Anzahl an Fehlermeldungen ist auch nicht verwunderlich, schließlich ist VB.Net Standardmäßig erst mal managed code und in meinem Code sind viele Referenzen zu unmanaged-Bibliotheken (libhotel.dll, WinAPI, etc.). Wie gesagt, neuschreiben ist wahrscheinlich einfacher. :) Wenn man da mit einem vernünftigen Codegerüst rangeht, dürfte das sogar relativ schnell gehen - das Konzept hat bei der Entwicklung die meiste Zeit beansprucht, nicht das Coden selbst. Und das Konzept sollte trotzdem überarbeitet werdne. :)
Soetwas war auch schon mein gedanke ;) Ich mach mich sofort mal ans werk. Wenns was neues gibt Poste ichs hier...
Wo ist eigentlich die Musik+Klänge gespeichert?
music.bnk und sound.bnk im data-Verzeichnis.
wie extrahiere ich die 'nativen' dateien; ich brauche sie in einem format wie mp3, ogg, wma, wav o.Ä.
Steht alles im Code (vermutlich modMusicControl.bas). :P Den kannst du 1:1 übernehmen, wenn du die BASS (http://www.un4seen.com/bass.html)-Bibliothek verwendest, was ich dir auch sehr ans Herz legen würde. Die Sounds müssten alle OGG bzw WAV sein, die Musik ist ausschließlich im Modulformat vorhanden und auf BASS optimiert - ähnliche Bibliotheken wie FMOD würden nicht alle Tracks wie gewünscht wiedergeben.
Nicht unbedingt 1:1 aber nach konvertierung... :D
Danke übrigens: die Darlehensfunktion, die sooft angesprochen wurde, wede ich auf jeden Fall einbauen
Coole Sache! Wenn du dich ernsthaft weiterhin mit dem Code befassen möchtest, könnte man sicherlich auch bei github oder so ein Repository anlegen, um den Code (bzw auch die unterschiedlichen Versionen) besser verwalten zu können.
sorry aber ich weiß leider nicht was das ist... :s
Wie ist eigentlich eine Savegame-Datei aufgebaut?
github ist ein Host für Git-Repositorys (http://de.wikipedia.org/wiki/Git). Git ist ein System zur Versionsverwaltung (http://de.wikipedia.org/wiki/Versionsverwaltung).
Wie Savegames aufgebaut sind weiß ich nicht auswendig, aber modLoadSave.bas sollt darüber Aufschlüsse geben.
ich guck mal
Ich hatte Sowiso die Idee das Ganze im XML-Format und nur auf ausdrücklichen nutzerwunsch im sav-Format zu Speichern und laden, weil das aus vb2010 mit xml bequemer ist (ja, ich bin manchmal etwas faul)
Das Format ist auch nicht sonderlich schön (ein Freund von XML bin ich aber auch nicht) und sollte neu (oder überhaupt mal) definiert werden. Generell würde ich zumindest bei meinem eigenen Rewrite (wenn der jemals stattfinden sollte) sehr viele Dinge im Spiel ändern, sodass das Format dann eh komplett umgekrempelt werden müsste.
Man müsste gucken, denn die datei darf ja auch nicht astronomisch groß werden.
Ich haber erstmal mit der Klasse "Hotel" angefangen:
Public Class Hotel
#Region "deklarationen"
#Region "Vars"
Private __Gebäude(105, 100) As Room 'U1-U4=0-3 E=4 O1-O100=5-105
Private __Pannen As Integer = 0
Private __Sterne As Integer = 0
Private __Datetime As structureTime
Private __Money As Int64 'Niemand wird mehr als 9.223.372.036.854.775.807 € bzw. 9.223.372.036.854.775.808 € Schulden haben...
Private __Name As String = ""
#End Region
#Region "Enum"
Public Enum RoomType
Freies_Feld = -1 'Hier ist nichts
Leer = 0 'Ein Leerer Raum
Einfach1 = 1 'Einfaches Einzelzimmer
Einfach2 = 2 'Einfaches Doppelzimmer
Luxus1 = 3 'Luxus-einzelzimmer
Luxus2 = 4 'Luxus-Doppelzimmer
Suite = 5
End Enum
#End Region
#Region "Structure"
Public Structure Room
Dim Type As RoomType
Dim Belegt As Boolean
End Structure
Public Structure structureTime
Dim Year As Int16
End Structure
#End Region
#Region "Propertys"
#End Region
#End Region
End Class
Villeicht ist da noch etwas hinzuzufügen; ich habe erstmal nur Wohngebäude Verwendet.
ps. Spaß-ecke auf der Webseite sowie Developer-Konsole sind Genial ;) ist genial
Sieht auf jeden Fall besser aus als vorher, auch wenn das Hotel immer noch unrealistisch groß ist. ;P
Man könnte es natürlich Später so machen, dass Man selbst eine HotelKETTE mit mehreren filialen errichtet. dan könnten die hotels kleiner sein...
Joa, war auch irgendwann mal geplant. Das Problem, das alles sollte man sich überlegen, bevor man überhaupt eine einzige Zeile Code geschrieben hat...
ich lern ja auch noch... :)
Gut, dann hast du jetzt eine Lektion gelernt: Erst das Konzept, dann der Code. Das sage ich nicht einfach so. Das gehört dazu, wenn man Spaß beim Programmieren haben will, und zum profesionellen Arbeiten sowieso.
Mittlerweile Sieht die Hotel.vb so aus:
Public Class Hotelkette
Private __Pannen As Integer = 0
Private __Sterne As Integer = 0
Private __Datetime As structureTime
Private __Money As Int64 'Niemand wird mehr als 9.223.372.036.854.775.807 € bzw. 9.223.372.036.854.775.808 € Schulden haben...
End Class
Public Structure structureTime
Dim Year As Integer
Dim Month As Integer
Dim Day As Integer
Dim Hour As Integer
Dim Minute As Integer
End Structure
Public Class Hotel
#Region "deklarationen"
#Region "Vars"
Private __Gebäude(105, 100) As Room 'U1-U4=0-3 E=4 O1-O100=5-105
Private __Name As String = ""
#End Region
#Region "Enum"
Public Enum RoomType
Freies_Feld = -1 'Hier ist nichts
Leer = 0 'Ein Leerer Raum
Einfach1 = 1 'Einfaches Einzelzimmer
Einfach2 = 2 'Einfaches Doppelzimmer
Luxus1 = 3 'Luxus-einzelzimmer
Luxus2 = 4 'Luxus-Doppelzimmer
Suite = 5
End Enum
#End Region
#Region "Structure"
Public Structure Room
Dim Type As RoomType
Dim Belegt As Boolean
Dim BelegtBis As structureTime
Dim ImBau As Boolean
Dim BauenBis As structureTime
Dim BesucherTyp As GuestType
End Structure
Public Enum GuestType
SinglePerson = 1 'Relativ Anspruchslos; Kiosk, NormalEinzelBett [0-2 Sterne]
Family = 2 'Will Schwimmbad, Kiosk, Extrem Hungrig, ZweibettZimmer - am Liebsten Normale [1-4 Sterne]
Geschäftsperson = 3 'Will Konferenzraum, LuxusEinzelbett-Zimmer im 5-Sterne-Hotel gelegentlich auch Suiten [2-5 Sterne]
Terrorist = 4 'Will Zimmer direkt neben Kinos etc.; wenn der nachfolger Einzieht, Explodieren alle Angrenzenden+diesem Raum zu Leeren Räumen & Gäste wollen Geld zurück
ÄlteresEhepaar = 5 'Will Gesellschaftsraum; bevorzugt Stock 1-10 [0-3 Sterne]
End Enum
#End Region
#Region "Propertys"
#End Region
#End Region
End Class