KamiKazoo

Newbie
Jul 11, 2017
94
162
Gave it a try. Not gonna touch the squirrel.

Can't get any of the Betsy content to work without crashing the game. Barely got tit fucking to work, for the BJ to work I had to take out her piercings, but then it crashes every time Zero finishes. So, yeah, wasn't impressed by this.
 

chrisangel

Newbie
Mar 3, 2021
23
22
SG isn't fat. She's definitely big, but in a very unreal way. Her belly is flat, and though her tits are huge they are not saggy at all. Ororo has way saggier tits than SG, so does Emma.
For those saying SG is the first thic figure, take a good look at Emma and Ororo. Oni was already playing around with the "flat-bellied but thic chicks" he clearly just lost his touch over time. Emma is amazing, but Ororo is already a little weird, Doreen just got weirder.

But if we think about it in a logic way, all x-girls should be fit or athletic, as they are constantly training for combat. It might be my Asperger's speaking, but I don't see it as body shaming or body depreciation, but simple logic and common sense.

For instance, I love the fact that Kitty is petite, and I would love to have more petite girls. But I wouldn't feel bad if she were fit and defined like Laura or Jean, though fit/athletic girls are not my thing.
this has been the most reasonable take of squirrel girl I have seen in this thread so far
 

sleepingkirby

Active Member
Aug 8, 2017
831
1,314
Looked through the games code, no wonder it runs like dog shit. Oni's a fucking if else sorcerer on the levels of yandere dev.
*psst* Renpy doesn't have a switch statement. And . If you want to make a list of conditionals in renpy and not write a bunch of python code, you HAVE to use a bunch of if-else's.
 

sleepingkirby

Active Member
Aug 8, 2017
831
1,314
To give everyone a break from the arguing and complaining; does anyone know how to set the amount of orgasms/actions performed? like a virgin string of commands
I think it's literally <charactername>.Sex and <charactername>.Action.
Just keep in mind that .Sex goes up and .Action is how many actions left.
 

Darune

Newbie
Jun 5, 2018
75
54
*psst* Renpy doesn't have a switch statement. And . If you want to make a list of conditionals in renpy and not write a bunch of python code, you HAVE to use a bunch of if-else's.
*psst* if you think going
if Girl is RogueX:
$ Girl.FaceChange("bemused")
ch_r "Oh, hey there [Girl.Petname]. You seem to be fitting in well. . ."
if not Girl.Kissed:
ch_r "Look, since the other day when I first. . . touched you,"
else:
ch_r "Look, since the other day when I first. . . kissed you,"
ch_r "I've had this kind of. . . buzz. At first I thought it was just from finally being able to touch someone,"
$ Girl.Eyes = "sexy"
ch_r "But I think maybe. . . could I touch you again?"
elif Girl is KittyX:
$ Girl.FaceChange("bemused",2)
ch_k "Oh. . . hey, [Girl.Petname]. I've been thinking. . ."
if not Girl.Kissed:
ch_k "Look, since a while back when I first. . . touched you,"
else:
ch_k "Look, since a while back when I first. . . kissed you,"
ch_k "I've kinda been thinking. . . feeling a little odd. . ."
$ Girl.Eyes = "side"
ch_k "Would you mind if I touched you again real quick?"
elif Girl is EmmaX:
$ Girl.FaceChange("bemused")
ch_e "Oh, hello [Girl.Petname]. . ."
ch_e "You've been doing well in your studies, it seems. . ."
ch_e "Look, since the other day when we first. . . came into contact. . ."
$ Girl.FaceChange("sadside",1,Brows="angry")
ch_e "I've been. . . struggling with something."
ch_e "A feeling. . ."
$ Girl.Eyes = "sexy"
ch_e "I was thinking perhaps that. . . touching you again might help?"
Is the way to handle this type of thing, never attempt to make a renpy game, stick to printing out hello world.

Also,
>make game
>dont want to write a bunch of code
lmao.
 
Last edited:

sleepingkirby

Active Member
Aug 8, 2017
831
1,314
*psst* if you think going
Is the ONLY way to handle this type of thing, never attempt to make a renpy game, stick to printing out hello world.
Uhh... you literally just broke the code. I can't even read what that's doing because you broke it by posting it. Congrats.
 

Darune

Newbie
Jun 5, 2018
75
54
What do you think game engines are for? Like, I'm with you. If I'm making a game, I'm coding that sucker almost from scratch. But literally, most games these days are made from game engines reduces code writing. Unity, let alone renpy, does this.
This is one impressively braindead take.
 

Toybirdy

Member
Oct 11, 2017
241
195
While I won't say anything about personal preferences in regards to the appearances or aesthetics of any characters (appreciative or disdainful), I do feel like it bears mention that your comment here is objectively incorrect. For the five characters listed, only Kitty and Rogue resemble their canon counterparts from the cartoon.
The other's resembles comic book version and other cartoon version I am 100% sure the storm and the jubilee resembles the 90's cartoons version and they actually look like the characters that they supposed to be.
here is a picture of teh emma frost he did. I am pretty sure i could find the other character's decigns he used for x-23 and storm if i took some time to look. well for Jean and psylocke i doubt i will find anything that look like those designs. plus those designs dont go well with the other character design at all. Just tryign to get the point across that Jean and his opsylocke designs look nothing like their character's from any source material. eventheir's costumes dont resembles their costumes in any cartoon or comic book counterpart.
 

imzahai

Active Member
Apr 19, 2019
948
1,284
Hmmm... That would be an interesting question no less. I'd say maybe? Naturally I'd say no, given I think it would be awesome if she were to be a mom, as it would bring so much joy and a sense of 'normalcy' for her. Maybe with regular contact with Zero it could happen.

Otherwise, unsure.
in the game you can give her the ability to touch others after a few levels.
 

sleepingkirby

Active Member
Aug 8, 2017
831
1,314
Is the way to handle this type of thing, never attempt to make a renpy game, stick to printing out hello world.
So, I found the segment, and yes, this is valid and correct. There's nothing wrong with this code. Is this the only way? Of course not. But that's not what I said. But according to programming 101, this is valid.
Code:
        if Girl.Event[1] == 1:
                #first time through. . .
                if Girl is RogueX:
                        $ Girl.FaceChange("bemused")
                        ch_r "Oh, hey there [Girl.Petname]. You seem to be fitting in well. . ."
                        if not Girl.Kissed:
                            ch_r "Look, since the other day when I first. . . touched you,"
                        else:
                            ch_r "Look, since the other day when I first. . . kissed you,"
                        ch_r "I've had this kind of. . . buzz. At first I thought it was just from finally being able to touch someone,"
                        $ Girl.Eyes = "sexy"
                        ch_r "But I think maybe. . . could I touch you again?"
                elif Girl is KittyX:
                        $ Girl.FaceChange("bemused",2)
                        ch_k "Oh. . . hey, [Girl.Petname]. I've been thinking. . ."
                        if not Girl.Kissed:
                            ch_k "Look, since a while back when I first. . . touched you,"
                        else:
                            ch_k "Look, since a while back when I first. . . kissed you,"
                        ch_k "I've kinda been thinking. . . feeling a little odd. . ."
                        $ Girl.Eyes = "side"
                        ch_k "Would you mind if I touched you again real quick?"
                elif Girl is EmmaX:
                        $ Girl.FaceChange("bemused")
                        ch_e "Oh, hello [Girl.Petname]. . ."
                        ch_e "You've been doing well in your studies, it seems. . ."
                        ch_e "Look, since the other day when we first. . . came into contact. . ."
                        $ Girl.FaceChange("sadside",1,Brows="angry")
                        ch_e "I've been. . . struggling with something."
                        ch_e "A feeling. . ."
                        $ Girl.Eyes = "sexy"
                        ch_e "I was thinking perhaps that. . . touching you again might help?"
I'll explain why:

First, this is a one off event. You'll never run into this dialogue again for a girl. This means that if you're making a function to handle this section, you're actually adding more computational work. Every function is a jump in ASM code. Every function has overhead. It's a very small one, but it still exists. Which means for one off statements, it's actually computationally faster to just stick a if-else and done with it since if-elses don't push things to the stack. This is the same reason why people will define certain functions as macros in C++. Because at compile time, instead of introducing jumps and having to context load/shift, the compiler will just copy and paste that block of code into the ASM.

Second, as I mentioned, something like this can be done via a switch, but a switch doesn't exist.

Third, each dialogue is unique. No repetition. Meaning calling the same function to then find the girl, then find the varying dialogue and reactions means you'd have to write the same block for each girl anyways due to the fact something like this and renpy's format. Renpy isn't like Unity or other game engines where you can just pipe a block of text from a dialogue tree into a dialogue box and expect auto formatting or parsing.


Are there better ways to do this? Maybe. It's arguable. One can define these into a separate file and jump to it then jump back. But, as I've mentioned with functions, there's a computational cost. There's also the human readability aspect to it too. Like, it's technically faster for the computer to run spaghetti code because there's less characters for the language parser to read through. But it's hell for the programmer to follow and maintain later on. Which is why programmers don't do spaghetti code. In a scripting/interpreted language like Python, this is even more prevalent as the script is the code. Readability is one of the main selling points. Separating every dialogue into it's own file can be more organized file-wise, but it can be argued that it'll be harder for a human to follow and maintain because you'll have to open 3~4 files just to follow one path of dialogue. Any advantage of file organization and neat looking code is directly in contrast to speed in developement because it's easy to go "Everyone's intro dialogue is in this 1 file and 1 block. I can compare and contrast or just add a new block." So, instead of spending a minute or two to find every block or run a:
find ./game -iname "*_dialogue.rpy" -exec filelist+=" "{} \; diff $filelist

you can just do:
vim ./game/script\ Addiction.rpy

Now, is this the perfect way to do this? No. Can it be optimized? Maybe. But there's also the school of thought for running optimization for a code that whose big O is only a constant (As in, not even n. Just a constant like 6.). The benefit vs. time taken to optimize is very small. A literal drop in the bucket compared to all the stuff.

The simplest way to do optimize this code and maintain both readability and speed (i.e. no logical jumps) would have been a switch statement. But, again, they don't exist in renpy.

So, yes, this is valid. There's nothing inherently wrong with this code. There are other code in this game (and many other renpy games) that are WAAAY worse. But the foundation of coding is the if-else statement. To say a literal use of them is a bad thing is to deny that, in ASM, there are no object inheritence. There are no class interfaces. The most basic logic gate after the NOT gate is probably the XOR gate. And if-else is the C++ and higher level analog of that.
 
Last edited:
4.40 star(s) 154 Votes