Magical Boutique

Ideas and games that are not yet publicly in production. This forum also contains the pre-2012 archives of the Works in Progress forum.
Message
Author
User avatar
Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

#136 Post by Jake » Sat Nov 04, 2006 1:02 pm

dizzcity wrote:The actual writing is easily understood, but I'm confused by the syntax behind the magasin and etalage variables.
I believe 'magasin' is French for 'store', it's the root word for the English 'magazine', which originally referred to storage (as in a gun's magazine) more than journal-style publications. Looking at the example script, it seems like the game-state is implemented in a class with helper functions such as the 'hasQuest' call and magasin is the instance of that class.

Direct translation provides 'display' for 'etalange', but from the usage I'm guessing it would be better to think of it as 'shelves'. Similarly, appears to be a management class for the various in-game resources, such as potions.

Just from the example given I've been able to write a simple functioning quest:
Simple test quest.

I had to guess at a few things, though; if third-party quest drop-ins are desirable it would be nice to know:
  • How to go about including them in a separate script file - I couldn't think how to get the 'quests' var in scope in order to add it in the first place, so I gave up and inserted it into the original quests.rpy. I'm sure I'm just forgetting something obvious (I've... been drinking... ;-) but a nice example would be good nonetheless.
  • Names of all the game items, e.g. images and Character instances for characters! Seeing 'framb' in the charapool indexer I assumed that would also be the name of her Character instance (actually 'fr') and her sprite ('framboise'), so I had to make guesses at those 'til I found the right ones. I couldn't write a quest based around anything but weak cures, 'cause that's the only index I know into potions.
  • Description of all the methods and properties of the various game objects; there's enough in the example to figure out how to do something involving potions, but how would one, say, interact with the locations list? Maybe Framboise is refusing to go to a particular location until some condition is met?
Server error: user 'Jake' not found

musical74
Eileen-Class Veteran
Posts: 1021
Joined: Sat Dec 18, 2004 6:13 pm
Location: Oregon
Contact:

#137 Post by musical74 » Sat Nov 04, 2006 2:56 pm

I've run into *more customers buy things than I can make in a day* too...Pom isn't really effective as a gatherer in the demo because what he finds are potions that aren't available...and when he goes to the plains for clover? Not worth it, really...I haven't seen Pom get more than 6 clover there...granted Framboise is a better gatherer but...so I technically have two brewers and one gatherer, and when you have 27 people buying potions on a regular basis, you are going to run out of potions or ingredients - or both.

Seasonal demand? LOVE that idea. Maybe some of that is because I suffer from allergies and pretty much HAVE to have allergys med during the spring. Using allergies as the example, make a potion that helps with the hay fever. During the spring, sales for this skyrocket as everyone who has seasonal allergies searches for the potion. As it gets to summer sales of it taper off, and by the middle of summer very few people are buying it. For spring, it's a huge seller (ever gone to a store looking for allergy med in the spring and having them tell you they are OUT? Was very annoying...)

Market share/competition I'm not so sure about. Granted, it worked wonderfully in Theme Hospital...but that's the ONLY one that I can think of that worked well. It was fun, however, getting a reward for having the best reputation of the 4 hospitals and so forth. It might work, but I imagine it would take a lot of effort to make it work well, and I'm not so sure how well it will work here. About the only time I found out how the competition was doing in TH was at the end of the year...not sure if you want to mess around with market share or not.

Reputation or demand reducing events are a good idea, so long as it isn't *take a repuation of 28 and slap it to 2*. Case in point: I worked at G I Joes <a sports and auto store> for awhile and we did a massive remodel. Sales dropped off because of it. Obviously, remodelling the boutique isn't likely, or if you do, make sure it costs a lot to do so. Have to think about this one a bit more...there has to be some way outside of dissatisfied customers and closing the store for lowering reputation, and reduced demand.

Wonder when the next release is going to be? MUST...PLAY...THIS...GAME (just in case you didn't know :))
A friend is one that walks in when the world walks out.

User avatar
monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#138 Post by monele » Sun Nov 12, 2006 8:45 am

The test quest was neat ^.^. Very in-character.

Okay, I'll give more details about the internal workings so it's easier to make such things :)

First, you'll have to update to the new version (if you can, backup the old one... better be safe...). See the attached file (game.zip).

Then, get the custom.rpy file (also attached) and put it in the /game directory. That's the file you will edit from now on. Right now, it contains Jake's quest, as an example (you'll see that almost nothing changed though).

For customization info, look at custom.rpy. I tried to comment quite a few things and added examples for Ingredients, Recipes, Potions, Locations and so on...
I know we still lack informations about many things but hey... it'll come ^^;

=== EDIT ===
Maybe Framboise is refusing to go to a particular location until some condition is met?
For now, this won't be possible... Locations are available for everyone ^^;. But yea, it's an idea.

Here's a lost of objects and stuff... I'm not going to comment it much... I hope it will be clear enough ^^;

Code: Select all

charapool = {'hero': Perso("Hero", "hero", "f_hero.jpg", salaryfact=.5, desc="Well, this is me... the owner of the boutique."),
                    'framb' : Perso("Framboise", "framboise", "f_fram.jpg", "framboise.png", desc="Framboise has been with me since the beginning : she was my very first assistant. She is a rather lively young girl who shows enthusiasm in most things. She loves, and is good at, gathering ingredients."),
                    'pom' : Perso("Pom", "pom", "f_pom.jpg", "pom.png", desc="This brash kid joined our team after hearing about the boutique and... insisting quite a lot. I don't regret taking him in, though, as he is very efficient at brewing potions and hunting."),
                    }

# the actual staff list during the game
        staff = [charapool['hero'],charapool['framb']]




        # INGREDIENT CATEGORY LIST
        
        ingcateg = {'herb': IngCategory("Herb"),
                    'plant': IngCategory("Plant"),
                    'fruit': IngCategory("Fruit"),
                    'mineral': IngCategory("Mineral"),
                    'mammal': IngCategory("Mammal"),
                    'bird': IngCategory("Bird"),
                    'fish': IngCategory("Fish")
                    }
        
        
        # INGREDIENT LIST

        ingall = Ingredient("All")
        
        ingredients = {'cinnamon': Ingredient("Cinnamon", ingcateg['herb'], 10, 28, "Bark; flavoring, anti-microbial", "ing_cinnamon.png", "cinnamon.png"),
                'fennel': Ingredient("Fennel", ingcateg['herb'], 5, 8, "Medicinal and culinary uses", "ing_fennel.png", "fennel.png"),
                'clover': Ingredient("Clover", ingcateg['plant'], 3, 3, "Flower used for tea, dye", "ing_clover.png", "clover.png"),
                'resin': Ingredient("Resin", ingcateg['mineral'], 16, 75, "Varnish, incense, flammable", "ing_resin.png", "resin_illust.png"),
                'amber': Ingredient("Amber", ingcateg['mineral'], 72, 360, "Fossilized resin; decorative", "ing_amber.png", "amber_illust.png"),
                'orpiment': Ingredient("Orpiment", ingcateg['mineral'], 80, 280, "Strong yellow pigment, toxic", "ing_orpiment.png", "orpiment_illust.png"),
                'bberry': Ingredient("Blue Berries", ingcateg['fruit'], 11, 12, "Berries for food use only", "ing_blueberry.png", "blueberry_illust.png"),
                'nut': Ingredient("Hazelnuts", ingcateg['fruit'], 7, 0, "Found in those big trees... guarded by squirrels.", "ing_hazelnut.png", "illust_hazelnut.png"),
                'feather': Ingredient("Feathers", ingcateg['bird'], 10, 1, "Fallen or plucked from a bird. They are said to have levitating properties.", "ing_feather.png", "illust_feather.png"),
                'fur': Ingredient("Animal Fur", ingcateg['mammal'], 10, 1, "Sometimes found stuck on branches or on trees bark."),
                'scales': Ingredient("Fish Scales", ingcateg['fish'], 10, 1, "First, you have to catch a fish. Then, you have to get the scales off it. Mirror armors, the scales are often used in protective magic.")
                }
        
        # POTION LIST
        
        potions = {'wcure': Potion("Weak Cure", "potions.gif", 10, "Cures simple poisons and sicknesses."),
                    'scure': Potion("Strong Cure"),
                    'wheal': Potion("Weak Heal", "potionheals.gif", 6, desc="Heals very light bruises."),
                    'eheal': Potion("Extreme Heal", "potionhealf.gif", 100, desc="Heals even fallen limbs."),
                    'bullstr': Potion("Bull's Strength", "potionredf.gif", 20, "Temporarily gives the strength of the bull."),
                    'foxcunn': Potion("Fox's Cunning", "potionorangef.gif", 27, desc="A drink of this and you will be as cunning as a fox !"),
                    'gbreath': Potion("Breath of the Just", "potionblues.gif", 50, desc="A sip of it and you will kill flies with your breath no more.\nFor all dandies with an odorant problem.")
                    }
     
        
        # INITIAL STOCKS
        
        stock = Stock(1000)


        # RECETTE LIST
        
        recettes = {'wcure': Recette(potions['wcure'], 3, [IngQty(ingredients['cinnamon'],1)], 10, "Using crushed cinnamon and simple water, one can obtain a curative ailment."),
                    'wheal': Recette(potions['wheal'], 4, [IngQty(ingredients['fennel'],1)], 10, "Heated fennel mixed with water gives a healing solution."),
                    'eheal': Recette(potions['eheal'], 35, [IngQty(ingredients['clover'], 50)], 0, "This is an extremely complex recipe."),
                    'bullstr': Recette(potions['bullstr'], 8, [IngQty(ingredients['clover'],3), IngQty(ingredients['fennel'],1)], 10, "Using macerated clover leaves mixed with crushed fennel, one can make a potion providing extraordinary strength."),
                    'foxcunn': Recette(potions['foxcunn'], 15, [IngQty(ingredients['clover'],5)], 10, "Lots of fresh clover leaves are needed for this potion but it makes you very smart for a short while."),
                    'gbreath': Recette(potions['gbreath'], 20, [IngQty(ingredients['bberry'],1), IngQty(ingredients['fennel'],5)], 5, "Blue berries freshen your mouth. Combined with fennel to empower this property, they even freshen your breath!")
                    }


        # LOCATION LIST
        
        locs = {'fsymp': Location("Forest of Sympathy", 360, 100, "bg_forest", distance=.5),
                    'crangst': Location("Crevice of Angst", 90, 360, "bg_crevice", distance=1),
                    'millake': Location("Millenium Lake", 550, 255, "bg_lake", distance=0),
                    'mntdoom': Location("Mountains of Doom", 60, 150, "bg_mountain", distance=1),
                    'plains': Location("Plains of Tranquility", 300, 340, "bg_plain", distance=0)
                    }

Attachments
custom.rpy
The file you should edit to add anything and everything.
(15.38 KiB) Downloaded 66 times
game.zip
Update! Copy over your current files in /game
(393.79 KiB) Downloaded 65 times

musical74
Eileen-Class Veteran
Posts: 1021
Joined: Sat Dec 18, 2004 6:13 pm
Location: Oregon
Contact:

#139 Post by musical74 » Thu Nov 16, 2006 10:09 pm

One thing I've noticed is that when reputation exceeds about 21 it becomes very hard to keep supply up with demand. When I quit I was at 22.7 reputation and was BARELY able to keep up with demand - and that was only because on a few days the customers didn't want Fox's Cunning or Bull's Strength, allowing me to restock them after they snatched up all I had the day before. Fox's cunning is pretty hard to make (maybe 4 a day) and when they demand 7 on a day....UGH

Money isn't really an issue, at day 54 I had close to 3,000 and that was AFTER grabbing up a set of shelves. Although, as of right now the only negative impact is salary (and shelves, but that's optional)...will that change, or do you want to keep that part of MagBou as simple as possible?

371 fennel, and about 30 or so cimmamon, 50 clover, and 3 blueberries...anyone want some fennel? I have it to spare :) The scary thing is I wasn't *hoarding* fennel, nor was I sending Fram off to do a fennel-only gathering misson...but because of the demand for Fox's Cunning and Bull's strength, I would send Fram off to the plains and she wouuld return with fennel and clover, and I needed the clover, BADLY. This is an idea, not sure how well this will work though: what's the possibility of exchanging one type of ingredient for another? I had fennel everywhere but was short on everything else...maybe have a shop that will trade, say, 5 fennel for 2 clover? Just wondering...
A friend is one that walks in when the world walks out.

User avatar
monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#140 Post by monele » Fri Nov 17, 2006 5:31 am

If you needed clover badly, why not use the "focus" feature when gathering and focus on clover ? It was meant for these cases. If you didn't because it doesn't get you enough clover in comparison, then I could always change the factor to make it a bit more worthwile.

Now for all the other balancing and stocks VS demand problems, I'll admit I haven't touched MagBou in a while because of various video games I got myself into ^^;... I've also gone through a rather... unmotivated period (for everything, not just MagBou) and I don't think it's over yet. So instead of half-heartedly answering, I'll just leave these for later.

Lastly, though, here are links to both files since some people are having troubles getting them from the boards :

http://monele.clearlyseen.net/Divers/custom.rpy
http://monele.clearlyseen.net/Divers/game.zip

User avatar
monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#141 Post by monele » Mon Nov 27, 2006 5:42 am

To be honest, I haven't touched the code in weeks :/. I've been more inspired with new characters though. Upcoming Christmas vacations... we will see how the mood goes.

Shadora:
http://www.deviantart.com/deviation/43322663/

Pimimi:
http://www.deviantart.com/deviation/43712648/

User avatar
dizzcity
Veteran
Posts: 311
Joined: Thu Aug 17, 2006 10:51 am
Projects: Lakeside Sunset, Wedding Vows, Working Woman
Location: Singapore
Contact:

#142 Post by dizzcity » Mon Nov 27, 2006 6:04 am

I know how you feel. :? I've got two projects just left hanging. Anyway, that wasn't how I expected Shadora to look like, but Pimimi is excellent! :D Sort of a feisty, manga-styled Tinkerbelle. Lovely.

-Dizzy-
A smart man follows the rules, a dumb man breaks them. A great man bends the rules and thus creates them.
Fanfiction.net Profile.
Writer and director of Working Woman (NaNoRenO March 2010)
Writer and director of Wedding Vows (finished 2009).
Creator of Lakeside Sunset (finished 2006).

User avatar
monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#143 Post by monele » Mon Nov 27, 2006 6:27 am

How did you expect Shadora to look like? ^^;

Yay for Pimimi :D. She's got to be a mascot... a pissed off mascot :)

User avatar
dizzcity
Veteran
Posts: 311
Joined: Thu Aug 17, 2006 10:51 am
Projects: Lakeside Sunset, Wedding Vows, Working Woman
Location: Singapore
Contact:

#144 Post by dizzcity » Mon Nov 27, 2006 6:43 am

Ah, never mind. :) I mixed up Shadora and Mozran. I was expecting a tough, genie and I got this weak-looking elf... :?

Pimimi for mascot! Put her on the front cover of your game, or make her into a icon! :D Heck, wanna try selling Pimimi collectibles?

-Dizzy-
A smart man follows the rules, a dumb man breaks them. A great man bends the rules and thus creates them.
Fanfiction.net Profile.
Writer and director of Working Woman (NaNoRenO March 2010)
Writer and director of Wedding Vows (finished 2009).
Creator of Lakeside Sunset (finished 2006).

User avatar
mikey
Lemma-Class Veteran
Posts: 3249
Joined: Sat Jan 10, 2004 6:03 am
itch: atpprojects
Contact:

#145 Post by mikey » Mon Nov 27, 2006 6:57 am

dizzcity wrote: Heck, wanna try selling Pimimi collectibles?
Well, monele, you certainly have the marketing part of MagBou nailed, people want collectibles already at this stage. ^_^

musical74
Eileen-Class Veteran
Posts: 1021
Joined: Sat Dec 18, 2004 6:13 pm
Location: Oregon
Contact:

#146 Post by musical74 » Mon Nov 27, 2006 11:47 pm

*signs petition for Pimimi for mascot*

I thought both Shadora and Pimimi were excellent. Pimimi looks like she's REALLY mad about something...she has that *Don't mess with me or you WILL regret it!* look...granted, she's a fairy, but she's one fairy I wouldn't want to mess with!

Wonder how the player (or Fram) find Shadora if she's a ghost? Assuming she's haunting the Boutique...it's be interesting to see how they find the elf-ghost-lady! *Fram goes into a seldom used area of the boutique, sees a lovely ghost...and screams! She runs to the player, babbling about *the Boutique being haunted!!!* Player goes to investigate, and sees the ghost, writing on something...she sees the player and gives the player a note. *I am Shadora, I mean you no harm...please, let me help you. I can help run this Boutique* Maybe? =)

Pimimi, I think she would work at the Boutique to spite someone - maybe the Player, to prove she CAN work at the Boutique =) Very well done on both of the characters =)
A friend is one that walks in when the world walks out.

User avatar
DaFool
Lemma-Class Veteran
Posts: 4171
Joined: Tue Aug 01, 2006 12:39 pm
Contact:

#147 Post by DaFool » Tue Nov 28, 2006 9:05 am

Hmmm, I was just wondering because everytime I play a new version of Magical Boutique it is like playing a new neverending game.

So it seems complete in a way, except that it can only get 'more' complete.

So, apart from finalizing original drawings, making sure all elements are original, adding music, and having a set number of quests, everything can be packaged already while the remaining developments can be placed in the form of a patch expansion pack.

I say this because I honestly think this is among the best designed and unique games this board has ever seen and would hate for it to fall into perpetual 'Work in Progress'. I don't mean to say rush things, but there is already enough experience here to form a complete, albeit open-ended game.

1.) I notice this happens often to me -- the game rarely becomes playable after about 2 months. Maybe its because I'm bad at management, but what usually happens is I first run out of shelf space, then I almost run out of money, then finally when close to 2 months I run out of potions (and hence reputation). If you think this is because the variables need tweaking then maybe it should deserve a look. Who knows, you can set a difficulty level by adjusting the impact (i.e harder difficulty is obtained by stronger variables, so the result is explosive, i.e. you run out of stuff quicker than you think, customers come in droves, etc.)

2.) How many quests would make the game feel complete? Maybe 10? I think what the game still feels lacking (based on the latest revision I played, I think), is lack of a main story. So maybe once that's in then its good to go. And the rest placed in an expansion pack?

User avatar
monele
Lemma-Class Veteran
Posts: 4101
Joined: Sat Oct 08, 2005 7:57 am
Location: France
Contact:

#148 Post by monele » Tue Nov 28, 2006 10:46 am

Yeah, Mozran and Shadora are rather different, except maybe for that gothic feel :).

For all the Pimimi stuff, I'll reply later since I have something in the oven... figuratively speaking.

musical74 : for Shadora, that's quite close ^^

DaFool : Honestly, right now, I have zero motivation for coding or tweaking the game. As I said, we'll see how it goes with Christmas. I might suddenly want to work on UP or MagBou (or something new, knowing me >.>...). To be doubly honest, I would love to give the means for others to make stories in the MagBou world rather than making them up myself. I can come up with simple ideas easily enough, but making good stories or even set of quests is just too complicated for me :/. That's why I posted the whole modding thing ^^;.

I'm really glad the game, as little and unfinished as it is, has received such a warm welcome. So, I at least want to let other people make it live. My plan for this is :
- Giving as much modding info as possible. Not all at once because it's also time consuming, but if someone asks, I'll try to answer. In the future, I might try to implement things people would ask for if it goes well.
- If my motivation definitely decides to die on me, I'll at least release the code under some Creative Commons maybe.
- Going back to the "modding", I think I'll try to complete the original cast of characters I had in mind, along with basic story elements. What you'd do with them would then be up to you (and me, since I could still mod, too ^.^).

So yes, maybe the game doesn't need much to be "okay", but it probably needs a lot to be close to my original vision ^^;.

User avatar
EwanG
Miko-Class Veteran
Posts: 711
Joined: Thu Oct 26, 2006 5:37 pm
Location: San Antonio, TX
Contact:

#149 Post by EwanG » Tue Nov 28, 2006 10:58 am

monele wrote: - If my motivation definitely decides to die on me, I'll at least release the code under some Creative Commons maybe.
- Going back to the "modding", I think I'll try to complete the original cast of characters I had in mind, along with basic story elements. What you'd do with them would then be up to you (and me, since I could still mod, too ^.^).
If you decide to do that, could you please wait until at least after the first of the new year? You see, I really want to get my work finished, and I'm already having to put forth some effort not to start playing with the Storytron stuff, and having you release something that only needs some more story line (since writing is my strength - everything else is what I have to do to get the writing out there) might be too much temptation for me to deal with :lol:

That said, I hope your motivation comes back in spades, as I'd love to see what your grand vision for this is!

User avatar
DaFool
Lemma-Class Veteran
Posts: 4171
Joined: Tue Aug 01, 2006 12:39 pm
Contact:

#150 Post by DaFool » Tue Nov 28, 2006 11:10 am

I'm willing to try my hand at quests, but as far as programming goes you'll need to spoon-feed me a bit. See, the last version I played before it fully worked I had to patch things up a bit, and maybe I might have inadvertently omitted something.

Just so that we are on the same page, when the all the characters in this game has been cast and included, is it possible for you to release a quest-writer's package, which will include the following:

1.) all of monele-written story segments, including the beginning sequence for completeness-sake
2.) all of any contributed quests thus far, named after the quest author (i.e. dizzcityquest1.rpy or jakequest1.rpy
3.) all of the above story and quest rpy files unobfuscated and separated into /game/quests/ and /game/story/ so that we can take a look at all the little events and decide which might contribute to the main story and which are best left as optional one-shots. I think we may also need a /game/character/ ...

...well basically, just the things we need unobfuscated so we can write stuff, because it's one big daunting mess and I wouldn't know where to start if I were just given the package as-is.

I think this may take a lot of load off you. After you finalize all the characters, ingredients, and locations, you can turn things over to us and see how far we can take them.

Post Reply

Who is online

Users browsing this forum: No registered users