Pink Petal Games

Game Discussion => General Discussion & Download => Topic started by: graodeareia on February 01, 2012, 08:40:03 AM

Title: Whore Master Cathexis Dev (renamed from WMII)
Post by: graodeareia on February 01, 2012, 08:40:03 AM
UPDATE June 30: link (http://pinkpetal.org/index.php?topic=934.msg16548#msg16548)
Yesterday I made a post about the new project I started. The next version of WM. I that post I said I would create a thread for the development as well as a thread for game design. Well the design thread is already up now this is the development thread. In this post I will write a tutorial about how you can get your development enviroment set up, for those that wanna play with the code. I will also explain my choice of tools and give a brief description of the code so far.
I'm a profional developer for a living (currently unemployed). I work with .NET, focused on C# for both windows apps as well as web ones. So naturaly C# would be the easiest choice for me. But that would be a problem in that the app would require the instalation of the .NET framework and thats quite a large download. Also I would still have to learn a new Framework, since I would probabily use the XNA framework, and Visual Studio Game Dev studio, both of which I have no experience with. But WM is a game that looks more like an desktop app than a game. Therefore a desktop framework would be more suited for  the development of WM2. But Windows forms is not the right choice since the app would look and feel like a bussiness app instead of a game. WPF would be the right choice here but I have no experience with that. All things considered I decided to instad go with c++. There is a popular framework called Qt. The GUI can be styled to look and feel more like a game than an desktop app. It is also portable meaning we can get it working on windows, mac and other systems like linux. That will give me a chance to work on my c++ skills, something that really appeals to me. Qt is complete enough that we would probabily not need much else. I can work with images, be styled to have a nice look and feel, and has a nice dedicated development envirament (IDE). And most importantly its all free.
When I went to the download page for Qt I saw there was an instalation tool that had all the stuff packed together. Problem is, there was already a new version for the IDE and the framework, but the instalation tool had not been updated yet. So I decided to install each component by hand. Here are the instruction of how I did that. Note that I'm on Windows 7, so the downloads and installation procedures might be diferent if you are on a diferent system, especially a non-windows system. Still the components necessary will be the same I think.

First I advise that you create a directory on your main drive (usualy c:). This is importan becouse one of the compiler tools (mingw) has a comand line interface that might be necessary at some point. This tool doesn't work  well with spaces on Directory names. So if you install things on "Program Files" you might have trouble running command line stuff with mingw. On my box I created a directory called "c:\QtDev". Here I installed all the development tools. I should really unsintall everything and take notes as I reinstall. But I'm lazy so I'm going to do this by memory. If you follow the instructions and see some diferences in your experience, please note them so I can update the tutorial. If you have trouble post them here I will try and help you get though them.

1 - Create your main directory on c: (in this example we will use c:\QtDev)
2 - Go to http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/ (http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/)
3 - There should be a link on top of the page called "Looking for the latest version? Download mingw-get-inst-20111118.exe (591.9 kB) "
4 - Download that or whatever version is available when you read this
5 - Tell the installer to download all the latest version and point it the "C:\QtDev\MinGW" folder
6 - I can't remember but I think that at some point you can tell it to also install a tool called "msys". This a a command line tool for mingw. Its nice to have handy as some Linux oriented libraries might require this tool for compilation.
7 - There is also some choice to what compilers you want to install. All you need is a C/C++ compiler. If you want Fortram or Objective C go ahead and install those. But it won't be used in this project.
8 - If everything went fine you should have the latest GNU C++ Compiler installed on your box
9 - Now we are going to install Qt. Go to http://qt.nokia.com/downloads (http://qt.nokia.com/downloads)
10 - Download and install the "Qt libraries 4.8.0 for Windows (minGW 4.4, 354 MB)"
11 - I choose to install the libraries in "C:\QtDev\Qt\4.8.0"
12 - Notice there are no spaces in the name
13 - If it asks if you want to also install a compiler, say no, we already have that
14 - If it asks for the compiler Directory it should be in "C:\QtDev\MinGW\bin"
15 - Now we got C++ and Qt, all we need is a development enviroment
16 - Go to http://qt.nokia.com/downloads (http://qt.nokia.com/downloads)
17 - Download and install "Qt Creator 2.4.0 for Windows (53 MB)"
18 - Again we don't want it to install a compiler, becouse this come with an old version of mingw
19 - I choose to install Qt Creator in the "C:\QtDev\Qt\qtcreator-2.4.0" folder
20 - Notice there are no spaces. I think the default sugestion is something like "qtcreator 2.4.0". I replaced the space with a dash.
21 - If the installer wants your compiler folder point it to "C:\QtDev\MinGW\bin"
22 - If it wants you Qt folder point it to "C:\QtDev\Qt\4.8.0\bin"
23 - If it wants a especific exe like "qmake.exe" those should be in one of the folders above
24 - Alright, we got the latest C++, Qt 4.8.0 and Qt Creator 2.4.0, nice job!
25 - For some obscure reason the debugger that comes with mingw doesn't work in Qt Creator. We really need a debugger, or else we will have a hard time hunting bugs. For that reason we will manually install the debugger, called GDB
26 - Go to ftp://ftp.qt.nokia.com/misc/gdb (ftp://ftp.qt.nokia.com/misc/gdb). Currently the latest version is 7.2. Click that
27 - Download qtcreator-gdb-7.2-mingw-x86.zip
28 - Unpack that somewhere, I did it to "C:\QtDev\qtcreator-gdb"
29 - Now we got everything so its time to setup Qt Creator. Since we installed the compiler and framework manually we need to point the IDE to the right folders
30 - Open Qt Creator. It should on your start menu under "all programs ->  Qt Creator by Nokia -> Qt Creator". If its not go the the installation folder and open it directly ("C:\QtDev\Qt\qtcreator-2.4.0\bin\qtcretor.exe")
31 - Go to Tools->Options menu
32 - Select the "Build & Run" tab
33 - Select the "Qt Version" tab. It should say "Manual -> Qt 4.8.0 (4.8.0) c:\qtdev\qt\4.8.0\bin\qmake.exe"
34 - If that is not there click on the "Add..." button and select qmake.exe in the bin folder of your Qt framework directory
35 - Now Qt Creator is pointing to the latest version of Qt we need to set up the compiler and debugger
36 - Select the "Tool Chains" tab
37 - There is some Auto-detected seting as well as a Manual one. If there is no Manual one again click on Add and select Mingw
38 - Select the "Manual - MinGW" seting
39 - Point the "Compiler path" to your MinGW g++ compiler. Here it looks like "C:\QtDev\MinGW\bin\g++.exe"
40 - Point the "Debugger:" to you debugger path (the place where you unziped you debugger). Here it is "C:\QtDev\qtcreator-gdb\gdb-i686-pc-mingw32.exe"
41 - Click the "Apply" button and then "Ok"
42 - Finally everything is done, so now you can open the WM2 project

WM Project setup

1 - Create a folder where you will have all your projects
2 - In my box I use the "C:\QtDev\Projs" folder
3 - Download the project and unpack it to a subfolder or you projects folder
4 - Here I have it on "C:\QtDev\Projs\WM2"
5 - Open that folder and enter the "scr" directory ("C:\QtDev\Projs\WM2\scr"). Thats the folder I keep all the source code.
6 - If the WM2.pro file is not associated to Qt Creator. Double-click the pro file, select a local program and associate it with "C:\QtDev\Qt\qtcreator-2.4.0\bin\qtcreator.exe"
7 - Once Qt Creator is open select "Use Shadow Build"
8 - Set both "build" and "release" to the ./build directory inside the wm2 folder ("C:\QtDev\Projs\WM2\build")
5 - click Finish
6 - Go to the "Projects" tab on the left
8 - Select the "Build Settings" tab
9 - It should say that your "Qt version:" is Qt 4.8.0. If its not change it to the 4.8.0 version
10 - The "Tool Chain" should be "MinGW" if its not click the "Manage" button and select the "Manual" setting we created earlier for MinGW
11 - "Shadow build" should be checked
12 - Build directory should be pointing to the build folder ("C:\QtDev\Projs\WM2\build")
13 - Alright, we are almost done. One last thing needs to be configured before we can compile the program
14 - Under the "Projects" tab select the "Run Settings" tab
15 - Set "Working directory" to the project root directory, the place where you unpacked the WM2 project ("C:\QtDev\Projs\WM2")
16 - That will tell Qt Creator to run the program in that folder. Its important to do so or the program will not find the files it searchs for since we will use a relative path to open all files (scripts, images, xml config files and so on)
17 - Run the application and it should work. To do this click on the Play button on the button left

Download the Project :
Update:
The Attrites demo has been updated so that now I have Revision 1 of the attributes: wm-v01 (http://www.mediafire.com/?pr7ft1elg2650wo)

Wow man this was a long ass tutorial. Took me quite a while to write it. If you have trouble just post it here. Since this is so big I will post another post to talk about the code in this thread soon. Even if its this big it should only take a few minutes to set things up if you discount the time you take to download the files, especially the Qt Framework file since its quite big.
Title: Re: Whore Master II (Dev)
Post by: Seelee_Majere on February 01, 2012, 12:16:37 PM
I don't know if my post is in good place, if not I'm sorry for that and a moderator move my post.
I'm also a C# developer, I like that language. I started with C, then a little C++, then some VB and nowsdays I'm a C# developer.

graodeareia
, is partially right when he said that an application that used C# doesn't look like a game, but I think that if you remove de border then 2 or 3 properties of windows then the look is very very very similar.
Last months I jumped to WpF and I have to say is awesome powerful. It combines the look like of flash with the powerful of C#. I'm very happy with that "layer". I called WpF a layer, because as it use C# or VB in code-behind for me it is like a "graphical layer".

There is a long long long time I do not use C++ so... my experience is now 0.

If graodeareia want I could help with this new project of Whore Master.

See you!!

P.D. Sorry for my english, it's not my first language.
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 01, 2012, 03:31:55 PM
@Seelee Try to install the dev enviroment and compile the program. After that take a look at the code and tell me what you think of it. If you want to learn how to get around in Qt Creator or Learn Qt I recomend going to youtube for some tutorials. You might even find some video material in you language. If not, there should at least be some nice writen material in your native language since qt is a very popular framework. Good luck. In regards to the choice of language I fully undestand the benefits of using .NET over C++. But as I said in my post I'm really interested in geting my C++ skills at a good level. So while WPF might be an attractive Framework I will undertake this project using Qt. The last time I wrote any C++ was back in college 5 years ago. So I'm also pretty rusty. Even back then all I did was write a few hundred lines of code and read a couple books without ever putting what I read to pratice. But I've to say that back in college I did some 4 year of pure c. So the ++ part of it wasn't too hard to learn. There are Advanced concepts like templates. But we won't be making many of those, if any. I'd say that the current Girl Attributes program that I shared here is the most complex C++ code I ever wrote. Took me a week to write only a few hundred lines of code. Most of the time I spend reading manuals, tutorial, watching videos and so on. The hardest part was linking the scripting language to the C++. I started actually using the Lua scripting language. Than I decided it was too hard and switched to javascript. Qt has native integration with javascript. I was able to acomplish in a few hours with javascript what I had been trying to do with Lua for 2 days. As for the right place to post things. Its like this, technical stuff here, design and game play stuff on the other thread. So your right to post your question here.
Title: Re: Whore Master II (Dev)
Post by: Seelee_Majere on February 02, 2012, 05:27:10 AM
Hello, I follow all your instructions and get this error message when compiling.  :'(


:-1: error: fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found


P.D. And yes, I get the lastest version of your project.
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 02, 2012, 10:42:43 AM
I never got that error. What OS are you in? Is it 64 bits? Did you change any setting after you installed minGW?

Try to run the progran attached:
1 - Open the pro file.
2 - Uncheck "Shadow build"
3 - Click Finish
4 - Press the Play Button in the lower left corner of Qt Creator

Tell me what happens.

Title: Re: Whore Master II (Dev)
Post by: East on February 02, 2012, 04:59:23 PM
I've been lurking around the forum for a few months now thinking about how i'd love to see WM improved and expanded, and this project looks like the perfect opportunity to step into the ring and start trying to actively contribute!  I have a little coding experience with qbasic and Pascal, but it was about 10 years ago, so I've been focused on relearning my coding and familiarizing myself with c++.  I've also been working on deciphering the SVN source code in order to make myself an overall blueprint of what's doing what and to get a good overall understanding of the current game mechanics before I go mucking around with coding. 


I'm not sure how much help i'd be as of yet, but I wanted to at least introduce myself and show some support.  :)   I think WM has some great potential, and am pretty stoked to be hopefully seeing some serious development again!
Title: Re: Whore Master II (Dev)
Post by: Seelee_Majere on February 03, 2012, 05:12:54 AM
I never got that error. What OS are you in? Is it 64 bits? Did you change any setting after you installed minGW?

Try to run the progran attached:
1 - Open the pro file.
2 - Uncheck "Shadow build"
3 - Click Finish
4 - Press the Play Button in the lower left corner of Qt Creator

Tell me what happens.


A nice MS-DOS screen with "Hello world!".
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 03, 2012, 07:36:52 AM
East : (http://pinkpetal.org/index.php?action=profile;u=2330)Tnx for the support! Anyways since you have been looking into the SVN tree I have a project for you if you want. You could help us setup a Version Control for this projects souce code. Qt Creator has some interfaces that you can use to access many types of Version Control systems. I don't know how it work, but you could do the research and post a tutorial here. That way it would be much easier to have multiple people working on the project. We would need to know how to setup the project, how to add and remove files, how check out and check in files all from within the Qt Creators interface.

But the first thing is to do a little rearch and decide which source control system is best of the project. As I said Qt Creator supports many of them, not only subversion. Of course it has to be a free host.
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 03, 2012, 07:47:54 AM
Seelee_Majere (http://pinkpetal.org/index.php?action=profile;u=2350):

Ok so you can build a Console application. Good. Now lets try a basic gui application and see if that works. The application is attached.

Try to run the progran attached:
1 - Open the pro file.
2 - Uncheck "Shadow build"
3 - Click Finish
4 - Press the Play Button in the lower left corner of Qt Creator

Tell me what happens.
Title: Re: Whore Master II (Dev)
Post by: Seelee_Majere on February 03, 2012, 08:09:21 AM
Working too... I saw a nice Window with "Hello World!".


P.D. My OS is Windows Xp 32bits.
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 03, 2012, 08:33:28 AM
I don't understand, my proj doesn't have much more than whats on the gui sample.
Maybe it has something to do with the new c++ features. I'm using a flag to enable some c++11 features to be available. Add this line to your pro file for the gui application and try to compile:

QMAKE_CXXFLAGS+=-std=c++0x
Title: Re: Whore Master II (Dev)
Post by: East on February 03, 2012, 04:29:21 PM
I'm setting up your dev environment via your tutorial as i'm typing this; if I have the same compiler problems as seelee I'll let ya know.  * crossing fingers*
Title: Re: Whore Master II (Dev)
Post by: East on February 03, 2012, 05:55:59 PM
Question: When open the .pro in Qt creator, it has selected "Create build Configurations: For each Qt Version One Debug And One Release", I don't want to change that, right?  It appears I should change it because I can't modify "Build" or "Release" unless I select "Manually" or "For One Qt Version one debug And One Release".  I'll set it to "Manually" for the moment, if I should change it just let me know.


*Edit: Just Compiled and had a nice little window pop up called "Girl Attributes (DEBUG)"
Title: Re: Whore Master II (Dev)
Post by: graodeareia on February 03, 2012, 08:11:24 PM
Do you have more than one version of Qt installed? If not you can leave in for each option. Since there is only one version, only one build will be generated.
Title: Re: Whore Master II (Dev)
Post by: DocClox on February 04, 2012, 01:17:52 AM
Very Nice :)

I kind of feel I should be offering some words of advice (or at least some gnomic utterances) at this point, but really it looks like you've got everything covered and under control.

Good luck, and I look forward to seeing the project progress :D
Title: Re: Whore Master II (Dev)
Post by: Ryu on February 08, 2012, 04:19:51 PM
Good luck with the game. I look forward seeing some results ^^
If you would have used c# or java I could have helped a bit, but I am not really good with c++ and I don`t like to code with it.
Title: Re: Whore Master II (Dev)
Post by: dungeon.roller on March 01, 2012, 07:00:12 PM

Been reading your design thread and hopped over to the development thread.


I've been thinking about a C# / WPF / XNA port of WM and reading through the source for a while.

I'm also very familiar with C#  (third person on this thread) -- I also have extensive database design & SQL experience and would be interested in working on the SQLLite DB side which has been mentioned in some other threads.  I'd really like to see this done in a language that isn't C++ and 3 of us seem to have C# experience on the thread.  How much work have you done in C++ so far?


Would you mind if I worked on a parallel ported track with C# / WPF / XNA?






Title: Re: Whore Master II (Dev)
Post by: graodeareia on March 03, 2012, 09:40:00 PM
For now the game has no license for the source code or the graphic assets that will be there in the future. When and if I choose to license the content it will be in a very permissive license such as the BSD license for the code and Creative Commons for the content. For now you can consider that all is in the public domain. So yes you may use all design ideas and anything else you want for a port.

I haven't worked on the project for a few weeks. I had to do some traveling and since I got back I could not convince myself to go back to working on it. The last time I worked on the project I was very frustated. I was trying to do some graphics but since I'm have very little knowledge and skill in that area the work was going very slow and the result was less than ok. Once I had something I tryed to do a test to use the graphics I had in Qt. After lots of problems and lots of research I realised that it was actually not possible to do what I wanted unless I did some custom Widget code, and/or a custom Style class, and that would be very hard since I'm not an expert in C++ and my Qt knowledge is very little.

Therefore I decided that I needed to go in a diferent direction. One possibility was to use web technology. With Html/Css I could easily do anything I wanted and I don't think it would be hard to integrate that with C++ using Qt as a bridge. I have plenty of experience and knowledge in that area. But web technologies are not pretty. They work, they are quite powerfull, but they are also complex. If you compare with xaml (the language behind WPF) for instance, you can do more with less code and get a better performance then with Html/Css. As a last resort to avoid abandoning C++ I decided to look into something I had been avoding since I started to look at Qt. There is a declarative language for Qt, similar to what xaml is to C#. Its called QML. QML is a client side technology that relies on javascript for functionality and a declative language for content and layout. But its easily used in combination with C++ backend. After much investigation I decided to write the game engine in C++ and the frontend in QML. All the scripting will be done in javascript since its native to QML and tightly integrated with Qt.

I believe QML is so easy to use that modders will be able to change it directly. There will be no need to have an external xml file that is used as a guide to generate the interface. All QML files will be available for modders to change as they see fit with no compilation needed since they are interpreted. With all the javascript and QML files available to modders, I hope we will have a lot of contributers to the project, even if they have no idea of how to compile a C++ program. C++ coding will only be necessary when changes to the game engine are required. Since modding is a main concern in WM I thing this approach will be very apreciated by the community.

I would like for you and anyone else interested in contributing to the development effords to take a look at the source once I release something using the new architecture. Even all the C# and Java people will probabily appreciate the power and simplicity that QML offers.

As for a database I'm not sure yet. For the modding comunity XML is probabily easier to use. The no need to understand relational databases or the SQL language. From a architecture and performance point of view, a database would offer more. One way to mitigate that is to offer simple interfaces that modders can use to change the database, like adding or removing items and traits. But that would mean that more work would need to be done. For now I haven't decided which way to go. Database requires more work and gives better performance and achitecture. XML requires less work and is readily available for modders. I'll will have to think more about that in order to decide. Anyone is invited to come in this discution.

If you decide that QML/javascript is still not interesting for you and start a port in C# I have a couple advises. I think WPF is better tool for the job than XNA. XNA is good when you have lots of animations and sprites, maybe some physics, collision detection and so on, or if you need some 3D graphics. WM does not need any of that. All you need is buttons, text boxes, tables and othe basic interface elements. WPF has all that and offers powerfull styling for a custom look and feel. As for the database, you might consider SQL Server compact instead of SQLite. Sqlite would be good if I also use it. We could share the database between the two projects. But SQL Server compact should be easier to use in an Microsoft enviroment. Therefore you could help me decided the database vs xml question before you choose a database. After all, we could also share the XMLs between projects if we choose to do that instead of a DB.
Title: Re: Whore Master II (Dev)
Post by: dungeon.roller on March 04, 2012, 02:02:29 PM
Thx for reply. I spent some time this weekend looking into XNA vs WPF and decided to go WPF.  I started with girl templates for random and unique girls and the girk file XML loaders which are mostly done. I also went through some picture viewer tutorials to familiarize myself with the image controls and fundamentals for image caching, thumbnails etc and ended up creating a girls image browser, which I thought might be pretty useful for the WMEditor.  Today I'll be working on generating random girls from girl templates, a girls browser page and a girl detail page.  Still just working through the fundamentals of the design in WPF, but it's pretty promising. I also spent significant time last week reading up on C++ which I haven't touched in years so that I could read all the original code and have reviewed all of the main classes.  I'm really thinking that the interface stuff that WPF provides is going to be significant for saving dev time. Additionally resource bindings and at load overrides could make it pretty easy for UI modders.
Title: Re: Whore Master II (Dev)
Post by: kenoichi on May 12, 2012, 06:28:25 PM
so is this working out or is dead already ?!...
Title: Re: Whore Master II (Dev)
Post by: Aika on May 13, 2012, 11:45:11 AM
Given that the person working on it hasn't been seen in over 2 months (and this has been noted in the other topic as well), this is probably dead.
Title: Re: Whore Master II (Dev)
Post by: Xela on May 13, 2012, 11:54:13 AM
Even if this isn't dead... it will take several month to build anything like WM, especially in C++ or C#... I wish I could help but I doubt I remember how to write Hello World! program on C++ :)
Title: Re: Whore Master II (Dev)
Post by: kenoichi on May 13, 2012, 12:02:20 PM
too bad... i hoped people were still working on it
i'm willing to help too... though i'm a c# guy too...
Title: Re: Whore Master II (Dev)
Post by: Xela on May 13, 2012, 12:13:28 PM
Well, our Python based project is coming along nicely, girls are pretty much 100% done already, work has been covered (many tweaks are still needed), their stats and traits are also complete, main character is also done... still to do are gangs, quests and battle engine, then a long and tiresome work of writing texts for events, quests and main game quest which can take a long time.

I don't understand one thing, if there are people that can code in C++, why not just use the original code and improve on it? I mean like real improvements, not light mods we've seen so far? Writing that code over again, in the same PL, seems insane....
Title: Re: Whore Master II (Dev)
Post by: Aika on May 13, 2012, 12:27:05 PM
I'm not sure if I should feel insulted or not. True, I haven't done anything with the game engine in my mod, but first, the game engine is beyond me... second, the game engine works, and I don't think really needs any work. The only real problem I have is the script editor not being open source.
Title: Re: Whore Master II (Dev)
Post by: Xela on May 13, 2012, 01:15:21 PM
I'm not sure if I should feel insulted or not.

That was not aimed at you in any way or form :) That was aimed at professional developers above and rest of the crew that seems to keep trying to create a similar game... on the same PL... While there is a perfectly good open source code right in front of them...

Just seems insane cause the work load just to match everything original WM could do in C++ is HUGE.

second, the game engine works, and I don't think really needs any work.

Wasn't game engine supposed to take care of gladiator fights in the arena, have dedicated 'rooms' in brothel (each with it's own purpose) and so on? Many of the game ideas were left half way programmed... adding a couple of places to the city wouldn't hurt either, maybe setting up some quests and a goals for the game. What was finished in the engine works fine, but finishing some stuff and maybe adding new things wouldn't hurt.

The only real problem I have is the script editor not being open source.

I never gave scripts to much attention, what does editor do?
Title: Re: Whore Master II (Dev)
Post by: Aika on May 13, 2012, 01:33:49 PM
Wasn't game engine supposed to take care of gladiator fights in the arena, have dedicated 'rooms' in brothel (each with it's own purpose) and so on? Many of the game ideas were left half way programmed... adding a couple of places to the city wouldn't hurt either, maybe setting up some quests and a goals for the game. What was finished in the engine works fine, but finishing some stuff and maybe adding new things wouldn't hurt.

Maybe we're working off a different definition of game engine. The game engine to me means everything that makes the game work and display properly; they're the parts of the game that govern the interface, graphics rendering, file loading and saving, and etc... With the game engine established and working, it's easy to add places to the city, make changes to the game logic, and so on. In my current build of my patch, I've made changes to the code of nearly every job function, and will be making more such changes in the next stage of my development of the mod... which will start once I finally get some random girls to release with the current download. I've made modifications to what does and does not display on the main screen, and made changes to the game logic that determines how many customers the brothel gets and where they are inclined to go. One big change I'll be making is removing the ability to enslave unwilling girls (though you could still torture her into submission...) This is all not part of the game engine, not part of what makes the game tick.

I never gave scripts to much attention, what does editor do?
The scripts are saved in binary, unreadable text files. The script editor parses the files into something readable and gives tools for editing the scripts, but it's buggy and doesn't allow for new scripts with variables.
Title: Re: Whore Master II (Dev)
Post by: Xela on May 13, 2012, 01:56:50 PM
The scripts are saved in binary, unreadable text files. The script editor parses the files into something readable and gives tools for editing the scripts, but it's buggy and doesn't allow for new scripts with variables.

Ah, I just tried to open one of the script files and figured the same :) I never figured script files had to be that complex... scripting for our game will be done in plain text...

Maybe we're working off a different definition of game engine. The game engine to me means everything that makes the game work and display properly; they're the parts of the game that govern the interface, graphics rendering, file loading and saving, and etc... With the game engine established and working, it's easy to add places to the city, make changes to the game logic, and so on. In my current build of my patch, I've made changes to the code of nearly every job function, and will be making more such changes in the next stage of my development of the mod... which will start once I finally get some random girls to release with the current download. I've made modifications to what does and does not display on the main screen, and made changes to the game logic that determines how many customers the brothel gets and where they are inclined to go. One big change I'll be making is removing the ability to enslave unwilling girls (though you could still torture her into submission...) This is all not part of the game engine, not part of what makes the game tick.

True enough... I am not a programmer and I got into that so I could make a mod for the original WM. As I was half way through my first book on C++ (I did some coding but it was a really long time ago) some guys started a WM project on Python and after I saw a few lines of the language, I fell in love with it :)

It's an interesting experience for me to see a game made from scratch and maybe I got the engine part wrong cause we already have an engine that can display info and make screens and do some kickass manipulations with images... and saves + loads the game.

So I figured a game engine is what our programmer been coding so far: classes and functions that extract data from .ini/.xlm/.txt files, sort it and create objects with that data, giving us access, ability to mod that data, set flags and so on(that data is everything from girls, to items, npcs, hero and other ingame heroes,work, rooms etc.)... now that I think of it, your definition is prolly closer to Game Engine than mine...

Edit:
//
 
With the game engine established and working, it's easy to add places to the city, make changes to the game logic, and so on.
 

 Here is my confusion: this thread was started by some seemingly professional programmers, why is their first instinct to create a similar game in the same programming language?
 I am well aware that it is not that difficult to add an empty screen or modify functions that are responsible for game's logic and mechanics. But it IS pretty difficult to create (for example) an arena in that new window where you can have your slaves fight monsters or other girls you don't own. It is also not easy to create graphical representations of those 'logical' areas where you win businesses from other gangs or make other very obvious improvement to the game like adding Quests and NPCs.   
 Most an average coder could hope to accomplish is create a clone of WM that has a slightly different approach to how jobs affect girls's stats and how girl responds to players 'ingame' requests. Maybe a couple of scripts to improve interactions or even make a new skin for the game. Someone who feels like he is able to create game like this anew should be able to improve on WM greatly...

PS: If you could ensure that after you preform an interaction with a girl on girl_details_screen a corresponding image is displayed instead of 'profile' pic when you release your mod, it would be great. It is one of those functions that nobody should be against and clearly improves the gameplay...
Title: Re: Whore Master II (Dev)
Post by: crazy on May 13, 2012, 09:21:51 PM
PS: If you could ensure that after you preform an interaction with a girl on girl_details_screen a corresponding image is displayed instead of 'profile' pic when you release your mod, it would be great. It is one of those functions that nobody should be against and clearly improves the gameplay...
Thats been done already by one of the modders.  Someone really needs to round up all the mods and combine them into one super mod.
Title: Re: Whore Master II (Dev)
Post by: Aika on May 13, 2012, 11:49:54 PM
I'd actually like to know how they did it. I looked through the user mods forum and couldn't find it, and haven't really had the time to try to figure it out myself.
Title: Re: Whore Master II (Dev)
Post by: crazy on May 14, 2012, 01:19:41 AM
I'd actually like to know how they did it. I looked through the user mods forum and couldn't find it, and haven't really had the time to try to figure it out myself.
http://pinkpetal.org/index.php?topic=883.0 is the one who did it.
http://pinkpetal.org/index.php?topic=845.0 Anon added it to his mod.  http://www.mediafire.com/?8683nt1btpe28vt is anons source code.
Title: Re: Whore Master II (Dev)
Post by: Xela on May 14, 2012, 03:23:41 AM
Thats been done already by one of the modders.  Someone really needs to round up all the mods and combine them into one super mod.

Yeah, especially all of the functions that plainly improve the game experience while not changing the original game mechanics... Someone with access to SVN could do it and all modders who create more interesting/harder to play clones would benefit from the code.
Title: Re: Whore Master II (Dev)
Post by: Popuri on May 14, 2012, 09:34:06 AM
I _think_ Anon21's mods did something like that, but I'd have to check.
Title: Re: Whore Master II (Dev)
Post by: Xela on May 14, 2012, 10:15:36 AM
I _think_ Anon21's mods did something like that, but I'd have to check.

crazy pretty much covered it :)
Title: Re: Whore Master II (Dev)
Post by: Aika on May 14, 2012, 08:26:13 PM
http://pinkpetal.org/index.php?topic=883.0 (http://pinkpetal.org/index.php?topic=883.0) is the one who did it.
http://pinkpetal.org/index.php?topic=845.0 (http://pinkpetal.org/index.php?topic=845.0) Anon added it to his mod.  http://www.mediafire.com/?8683nt1btpe28vt (http://www.mediafire.com/?8683nt1btpe28vt) is anons source code.

Great, thanks. With this, I'll be able to see how he did it and implement it into my own code. Looking at the files he changed, I'm not going to be able to directly use the files, as I've made my own changes to the files in question.
Title: Re: Whore Master II (Dev)
Post by: Popuri on May 14, 2012, 08:44:27 PM
crazy pretty much covered it :)

D'oh!