devolution

Author Topic: Whore Master 7  (Read 41607 times)

0 Members and 1 Guest are viewing this topic.

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #60 on: October 30, 2022, 08:36:03 PM »
How make daughter character?
Old Whore Master Editor 0.8.32- not working,
all time born random characters....

You can edit the xml files directly, for example with notepad++, in the end these are just text files.
To get a random girl to spawn as your daughter, in you need to define it like <Girl Name="..." Desc="." Human="Yes" Catacomb="No" YourDaughter="Yes"> in the rgirlsx.
(I've noticed that in previous versions, it was "Your Daughter", with a space in between, which made it impossible to specify in XML. This is fixed now)

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #61 on: October 31, 2022, 04:02:35 AM »
I've uploaded a new version:
Not that many changes yet, but the previous one would crash when using the 4:3 themes, so I did not want to wait long with the updated.
There are some nice changes to the UI, though:
 * You no longer have to go back to the main screen to switch between buildings, the Prev/Next buttons now also appear in the girl management screen
 * You can now get an overview of the different traits in the game by clicking the `*` button next to the trait description in the girl details screen. (I'll probably change this to a question mark, but for now I've reused one of the buttons that already exist)

Apart from that, there are some bug-fixes and some tweaking to traits. Nothing new on the image tagging front, for now.
Enjoy.

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #62 on: November 19, 2022, 06:18:08 PM »
Next version is on github.
https://github.com/h1262216/crazys-wm-mod/releases/tag/v7.2.1-alpha5

Mostly bugfixes, and a bit of tweaking for the movie studio. Also quite a bit of behind-the-scenes programming work.

Offline big fan of fans

  • Newbie
  • *
  • Posts: 2
Re: Whore Master 7
« Reply #63 on: November 20, 2022, 05:06:25 AM »
I believe I have found two bugs and a fix for one, although I don't have a github or discord. The first bug is likely caused by line 176 of "src/game/cGirls.cpp".
The line in question is in a function that handles girls leveling up and reads:
"int chance = g_Dice % 12;"
I believe that it is supposed to actually be:
"int chance = g_Dice % 11;"

The line is there to generate a random index for the statically created array on the line before. The array contains eleven fixed traits, meaning its indices range from 0 to 10, however the line as it is currently written can instead occasionally generate an index of 11. This makes the bug unreliable to reproduce, as it only happens when a girl levels up to a level divisible by five so she can gain a new trait, but even then only in a little more than one twelfth of the times. When encountered, this bug manifests as the player getting an error message that looks something like this, although substitute arena for any building the girl leveled up in:
"Error when processing building Arena: Could not find trait:" and then some random gibberish.
This is likely happening because the trait array is going out of bounds and trying to read this memory space as a trait, which will obviously not generally produce any meaningful text, nor anything usable to the gain_trait function a few lines down from it. The process buildings phase will then fail for that turn, and the girl will not get a trait for that level. I have reproduced the error for both the previous version, as well as the new version that was posted yesterday. It is hard to be absolutely certain that it fixes it due to the random nature of the bug, but I have not encountered the bug after compiling a version of the game with the above change.

The second bug is the one that I have not explored the cause of and is related to the UI. When the user selects a girl and then clicks the "girl details" button at the right of the screen, they enter into a menu with a button that reads "more details" on the left side of the screen. In older builds, clicking on the button would cycle through several different stats on the left half of the screen, before wrapping back to the original stats. Now, after clicking on it twice, it will produce an error message that reads: "Could not find trait". Then, bits of text from some scripts will show in place of the error text on the red box before finally kicking the user out of the "girl details" menu. The player will then be unable to enter the "girl details" menu again until restarting the game, with the player instead getting only the "Could not find trait" error message any time they try to enter the menu.

Anyway, thanks for the mod, it really improved the game's overall codebase, especially in a lot of ways that are really nice but invisible to the overall player.

Edit:
Alternatively, looking at the commit history for the first section it seems that part was originally supposed to be in a switch with a chance to not produce a trait when it rolled 0. If this original behavior was intended, the lines below can instead be modified by sticking them in an if statement that only runs if it didn't roll 11.
« Last Edit: November 20, 2022, 05:22:34 AM by big fan of fans »

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #64 on: November 20, 2022, 01:58:21 PM »
Thanks for the report, and the thorough investigation.

I've found the source of the second bug: Before, the list of traits that a Therapy can remove was set within C++, so the provided `const char*` would be valid for the entire program lifetime. Now it is loaded from an xml file, so it is no longer save to keep the char pointer. Switching to std::string for the `sRemoveTrait` struct solves the problem.

The reason it crashed in the detail screen is that is was trying to generate the scores for the different "jobs" that a girl can take, and thus checking these traits, with whatever bogus ended up at that memory location.

The cleanup of the code is certainly an ongoing process. There are still some parts that I haven't really gotten to (items, gold, customers, rivals), and for some of those that I have changed, by now I'd like to redo some things. The usual story of software development, I guess.

Offline big fan of fans

  • Newbie
  • *
  • Posts: 2
Re: Whore Master 7
« Reply #65 on: November 20, 2022, 04:26:20 PM »
Thanks, that was pretty fast and the problems seem fixed. Yeah, that last point about software development is definitely true a lot, lol. Speaking of reworking items, I just figured I'd let you know that misc. items haven't been properly applying their Skill, Stat, or Trait effects for a while now, so that may be something worth investigating when you do get around to items if you weren't aware already. They do still correctly apply any effects that specifically check for the item, such as the end of week events for the nightmare orb or the chrono bed.

Edit: Nevermind, I don't believe the first issue is completely fixed with how you modified the LevelUp function. While the original bug message does seem to be gone, I am instead getting variations similar to this new error message under the same conditions:
"Error when processing building Farm: basic_string::_M_construct null not valid"
I believe that it is likely that some of the functions that the gain_trait functions relies upon aren't able to handle the nullptr that your fix introduces, instead producing the new message because I can no longer reproduce the error if I once again adjust the random index range to not include the nullptr.
« Last Edit: November 20, 2022, 04:52:13 PM by big fan of fans »

Offline zenkls

  • Newbie
  • *
  • Posts: 3
Re: Whore Master 7
« Reply #66 on: November 23, 2022, 05:42:35 PM »
Hi!
I think i found a bug, with the version 7.1.2 i think when a girl birth and the daughter go to dungeon generate a crash. It's happen when i click next week button.
This  it doesn't happen in the version 6.4.1. i tried to attach the gamelog but it's too big.
Thanks for the help and sorry my english.






[/size][/color][/size][/color][/size][/color][/size][/color]
[/size][/color]

Offline Fruitymate

  • Newbie
  • *
  • Posts: 3
Re: Whore Master 7
« Reply #67 on: December 07, 2022, 11:46:16 PM »
I Personally Have an issue where a good amount of the time, the unique girls will use the default images instead of the images in their folders in the characters file, I dont know it means I need to redo all of the girlsx files but it wasnt an issue before in 6.03. I also like to compile them in batches and and leave them in the characters folder but not in their own character folders.

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #68 on: December 11, 2022, 08:50:37 AM »
Thanks for the error reports and comments.

@zenkls
I've tried to reporduce the error on my end, but so far without success.

@Fruitymate
It should definitely not be necessary to redo all the girlsx files (or, actually, add `images.xml`). While doing so would improve the image selection, the default based on file names should still be good enough. I've tested it with a few packs, and it seems to work. Maybe the gamelog can give some more info on what goes wrong in your setup. It produces some output related to image selection, generally prefixed by `INFO:    [image]`.
If you get two messages `Looking for image` in a row, without any `Selected image` inbetween, that means that for this particular lookup, fallback images were used.

If the problem occurs with a specific pack that is around here for download, I could also try to debug that pack.

"I also like to compile them in batches and and leave them in the characters folder but not in their own character folders." I'm not sure what you mean here.

Offline Fruitymate

  • Newbie
  • *
  • Posts: 3
Re: Whore Master 7
« Reply #69 on: December 11, 2022, 09:40:36 PM »


"I also like to compile them in batches and and leave them in the characters folder but not in their own character folders." I'm not sure what you mean here.



So instead of putting each single .girlsx files into its corresponding character file, such as Resources\Characters\[Character Name]. I like to take a bunch of .girlsx files, usually from the same series, and put them together with the WMEdit into a bundle, and leave it in Resources\Characters. I could have worded it better in my previous post.

Offline Fruitymate

  • Newbie
  • *
  • Posts: 3
Re: Whore Master 7
« Reply #70 on: December 13, 2022, 02:27:12 AM »
I found out what the issue was. I, at some point, I made and put second .girlsx files in the resoures\Characters\[Character Name] folders. so I had 2 of the same floating around for many characters. WM6.3 never really took this as an issue so I never realized it.

Offline TheVoidDeath

  • Newbie
  • *
  • Posts: 2
Re: Whore Master 7
« Reply #71 on: December 14, 2022, 11:20:17 AM »
Is it intended behavior for the game to freeze for a few seconds after i click next week?
I've never had that happen in the OG version, even with half the characters i have added now. And it happens ALWAYS with wm7

Offline amlumgzk

  • Newbie
  • *
  • Posts: 9
Re: Whore Master 7
« Reply #72 on: December 16, 2022, 08:10:46 AM »

FAILED: G:/crazys-wm-mod-7.2.1-alpha5/crazys-wm-mod-7.2.1-alpha5/src/game/events.h
cmd.exe /C "cd /D G:\123\src\game && Python3::Interpreter G:/crazys-wm-mod-7.2.1-alpha5/crazys-wm-mod-7.2.1-alpha5/src/game/../codegen/events.py G:/crazys-wm-mod-7.2.1-alpha5/crazys-wm-mod-7.2.1-alpha5/Resources/Scripts G:/crazys-wm-mod-7.2.1-alpha5/crazys-wm-mod-7.2.1-alpha5/src/game/events.h"
The filename, directory name, or volume label syntax is incorrect.how repair error ?)
I don't have a D drive ((((
« Last Edit: December 16, 2022, 10:31:00 AM by amlumgzk »

Offline Hazure

  • Jr. Member
  • **
  • Posts: 92
  • I'll get there eventualy.
Re: Whore Master 7
« Reply #73 on: December 16, 2022, 11:24:20 AM »
What program do I have to use to turn the source code into something useable?

Offline h1262216

  • Jr. Member
  • **
  • Posts: 85
Re: Whore Master 7
« Reply #74 on: December 17, 2022, 07:54:41 PM »
@TheVoidDeath:
Unfortunately, all the game's actual computations have to happen only at the point when you click Next Week, so with lots and lots of characters is is possible to have some delay. A few seconds sounds like entirely too much, though. Maybe part of it is because I've added a bit more logging output, to make it easier to debug any problems.

@amlumgzk
Context for this message? Did you try to compile the game?

@Hazure
There are two parts of the source: 1) The core game, the c++ files. Here you need a C++ compiler, and cmake to handle the compilation process. Under linux, this is really simple, under windows it's probably easiest to set up something like msys2 (https://www.msys2.org/), which gives you a linux-like environment to compile with.
2) The scripts. Since lua scripts are only interpreted when the game is run, so you can just change the files and the new ones will be used by the game.