Wednesday, December 15, 2010
The number of girls...
Over and over I feel like I am repeating myself that the number of slaves is pretty much set in my mind to be around 10. There are a number of reasons for this but the main ones are,
1) Code reason. Do to a limitation of the object classes in Adobe Flash it is not possible to make infinite arrays of the object classes. Why? Because if you make a copy of the object all the copies point to the same point. Yah it doesn't make much sense to me either. I fought it just recently when making enemies for combat and researched it out which is something I didn't do when making the girls 6 months ago. And besides a really complicated recursion which is supposed to create false objects and never worked its just not an option. So instead I have to create ghost objects (my name for them). If you actually open up girls.as you will see that about 2/3 of the entire .as is 14 ghost girls. Why 14, 10 girls + 1 push girl for quest winning + 3 for the auction house so it doesn't crash even when you go in with a full compliment of girls.
Sure I could add more ghosts, but its a pain in the ass to add variables to 14 ghosts and 10+ slaves, every time there is a new stupid Boolean that needs to be added. Especially when the game isn't even to beta yet.
2) Content reason. More then 10 slaves becomes huge Micro Management. For those of you who have played Sim Brothel and Whore Master where you have 50+ slaves in multiple brothels it just takes the fap out of the game. Instead your going from one brothel to the other trying to tune the girls so they don't require attention and in the case of Sim Brothel leveling them and adjusting there cost. After a while you just start clicking next turn to finish the game. Compared to Sim Brothel I really like Whore Master, something about impregnating your slaves just is enjoyable but once you have 2 or 3 brothels the game quickly becomes more annoying as your paging through looking for problem girls every turn and slowly you stop caring about the girl you have been working hard on and lose the fap.
So by imposing a hard cap on the number of slaves you can own, I'm hoping to fix that issue and hopefully keep the girls personal and interesting rather then numbers. I'm failing at the moment, but that's more because still working on core system rather then content. Compared to either one of the two examples above Otherworld actually allows events with each girl, mainly used right now for different text when talking to them, but any job can be interrupted. And that brings us to the next point, once the content for individual slaves gets added do you really want each turn interrupted by 50 plus slaves as they all do there individual separate special event? Yah...
3) The third reason and the one I prefer as the most thought out. Because I said SO! Don't like it, the games open source. Need to add more girls to the girls.as, update the pens.as and auction.as.
Daisy
Subscribe to:
Post Comments (Atom)
Reason #2 sounds like a really good reason. Reason #3, eh, that's fine.
ReplyDeleteBut, uh...it kind of sounds like you're not understanding some of the programming stuff. I mean, if you can get it working, that's great...But, maybe if you understood it better, you'd be able to create code that works better and is easier to maintain. Anyway, I'm going to look through the open source bit and see if I can offer some comments.
Could be still learning the programming thing, but I did research it and play with the code recently and still can't find a work around.
ReplyDeleteDaisy
i dont know if this helps however u can create an array of similar objects all u bhave to do is to create that object in a loop for example:
ReplyDeletesquare <--- class that represents a black square
list:array = new array();
for(i = 0;i <10;i++)
{
square temp = new square;
list.push(temp);
}
i hope this helps
sry for doublepost, to be exact u must try to push not copies of a existing object but more like local temp objects created in classes or functions.and add them to your wanted array.
ReplyDeleteanother example:
function add_object():void
{
square temp = new square();
list.push(temp);
}
You could parse from a String in order to create your objects.
ReplyDeleteAnd the more I look at it, the more I think you're just having aliasing issues. The insanely simple way is instead of: x= objectwhatevs; x= new className(objectwhatevs.getParam1(),getParam2(),...etc); PM me the code on FP if ya still need help :)
ReplyDeleteThe "right" way to do this--by which I mean, the way most people do it and the way all the documentation says to do it--is to create a class representing the girls. Then you can create as many instances as you want. (That's what the other commenters are talking about, I think!)
ReplyDeleteIf you've programmed C or C++, you may be aware of the distinction between variables and pointers. Well, in ActionScript (and other new languages like Java), ALL the variables are pointers. (Except that there are certain features of AS that let you sometimes treat primitive objects, like integers and Booleans, as just variables that aren't references. Anyway...)
The point is, yes, of course creating new variables and assigning the object to them always points to the same object, because they're all pointers.
So, one thing you can do is rewrite the program to use objects instead of arrays. I haven't looked at it too much, so I don't know how much work that would be.
Another way would be to find a way to copy the object-arrays. There SHOULD be a way to do that, but I don't know of one right offhand. I'll get back to you...
4th reason: cause youre lazy =P
ReplyDeleteplease write from what anime this picture?
ReplyDeleteMost Definitely, K-on!
ReplyDeleteDaisy