devolution

Author Topic: Slave Training (ST) concept  (Read 24089 times)

0 Members and 1 Guest are viewing this topic.

Offline CherryWood

  • Hero Member
  • *****
  • Posts: 643
Re: Slave Training (ST) concept
« Reply #30 on: August 15, 2014, 02:00:55 PM »

Did you guys decided if MC can train slaves indirectly by sending them to trainers, using assistants/other girls and jobs? Just by "managing" without directly interacting with them? (like you can in otherworld but hardly in SM)

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4730
Re: Slave Training (ST) concept
« Reply #31 on: August 15, 2014, 02:06:06 PM »
Both, I guess.
Like, you can give (relatively simple) tasks to assistants, and they perform them until you will say otherwise. Meanwhile you could work with another slave using AP if you want to.

Offline CherryWood

  • Hero Member
  • *****
  • Posts: 643
Re: Slave Training (ST) concept
« Reply #32 on: August 15, 2014, 02:28:51 PM »
Both, I guess.
Like, you can give (relatively simple) tasks to assistants, and they perform them until you will say otherwise. Meanwhile you could work with another slave using AP if you want to.
Ok, thank you, I'm trying to get the hang on this concept talk and this seems a bit important to me, because by simple logic, the less MC is truly required to interact personally with the girl to produce a trained slave out of his business, the less important he himself should be in the basic system of training a slave (in terms of options, not effectiveness).

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #33 on: August 15, 2014, 02:33:05 PM »
Yeah, that's why I want base methods for everything... so same logic can be used for trainers as for MC.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4730
Re: Slave Training (ST) concept
« Reply #34 on: August 15, 2014, 03:12:41 PM »
I'd say, generally MC himself should be able to produce somewhat better slaves than assistants with the same level. However, it also means that all AP will be wasted on one single slave, so no interactions, arena, explorations, etc.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #35 on: August 15, 2014, 03:13:41 PM »
I'd say, generally MC hiself should be able to produce somewhat better slaves than assistants with the same level. However, it also means that all AP will be wasted, so no interactions, arena, explorations, etc.

I can write a method that would auto-care for that as well based on label callbacks.
Like what we're doing?

Offline Thewlis

  • Jr. Member
  • **
  • Posts: 74
  • Its hentai, quiaff?
Re: Slave Training (ST) concept
« Reply #36 on: September 18, 2014, 03:55:16 PM »
Hope no one minds, but I'm gonna steal this thread as we already have 2 for the ST module, adding a third would be dumb.

Right-o, what currently isn't in:
  • Any actual training.
    The 'courses' currently in are for testing purposes. The school courses that already existed still do, they were just updated to use the new system.
  • Trainers.
    Currently the only character that can train girls is the hero.
  • Proper running away mechanics.
    Currently placeholder, mearly counts as disobeying that ends the course entirely.
  • Balance.
    Every course and upgrade had its stats decided for testing / basic functionality. Its probably really broken.

What is in:
  • The "Training Dungeon".
    It sits in the "Buildings" screen along side the brothels as its upgradable. No advertisements for it, and it can't be renamed. It currently can have up to 50 rooms (starts at 5) and doesn't have any dirt/cleaning mechanics.
    Currently also works as an upgradable Apartment. May want to remove this functionality, or the Apartment.
    The upgrades available are:
    • Rewards = Beds, Garden, Baths. Increases the chance that a girl will obey their trainer.
    • Punishments = Cells, Stocks, Whips and Chains. Decreases the chance that a girl will disobey.
    • Security = Manacles, Better Locks, Guard House. Decreases the chance that a girl will runaway, Guard House allows the guards to gain vitality after their job.
    • Trainers = Personal Rooms, Training Rooms, Equipment. Gives a bonus to Trainer Skill and Trainer Knowledge.
    • Equipment = Motivational Aides, Relaxation Aides, Punishment Aides. Gives a bonus to exp.
    • Housing = Bedroom Refurbishment, Facilities Refurbishment, Decoration. Gives and extra 1 AP to the hero per upgrade if they stay here.
  • Schools.
    They still exist pretty much the same as before. They generate random courses, they track their duration and which girls are taking them, they generate next day reports... The only difference is they use the new mechanics.
  • The Training selection screen.
    I replaced the original girl_courses screen with girl_training. It uses the original screen as a sub screen for Schools, and has a new sub screen for the Training Dungeon. It allows you to switch between schools and the dungeon by pulling the possible training locations from the schools list, so new schools and dungeons and be easily added / removed.
    The training dungeon screen has 3 columns: Trainers contains the available trainers at the location (currently only the player), Courses contains the different courses the girl+trainer combo can do, and the third contains the different lessons in the course.
    Example: the Obedience course contains the lessons Talk, Practice, Break and Chore.
    Only the lessons the girl+trainer can do are shown, and only the courses with visible courses are.
  • Next Day reports.
    • The schools and dungeon provide next day reports are per usual. They are all found in the School section as normal. They now also show how many girls obeyed, disobeyed or ran away. The dungeon also shows its security rating.
    • The Training Girl reports say what course they are on, shows the difference in stats and whether they obeyed/disobeyed/ran away and whether they were prevented from disobeying or running away.
    • The Guard reports say whether they stopped or failed to prevent girls from running away, and whether they spent time in the guard house.
    • The Trainer reports say how may girls disobeyed and whether they were able to stop them.

Mechanics:
General:
Each course can restrict what girls can do them through jobs and status ("Prostitute" and "Slave" for instance).
Each lesson can restrict girls by a set of requirements for the girl and trainer. This way you can have more effective lessons as a stat increases for instance.
The lessons have primary and secondary changes just like the normal schooling that have that same chances to apply as the schooling.
The lessons can also have girl ap, trainer ap (currently thought to be 1 ap per lesson, or 1 per girl. Could be increased for more 'strenuous' lessons though) and gold costs assigned to them, as well as a duration.

Lesson Success:
Lessons can have varying levels of success based on set requirements.
The currently accepted success levels are:
  • true = The girl did well and is classed as having "obeyed".
  • false = The girl didn't do well and is classed as having "disobeyed".
  • "stop" = The girl did so badly / didn't want to do the course and it was stopped (Used for non-slaves assigned to XXX courses for example). Is classed as having "runaway".
  • null = The course went normally.
  • anything else = Excepted, but doesn't do anything.

The success of the lesson is checked before any learning is actually done. Based on the success level different things happen:

For true, the girl gains an "obey" flag (up to 10). This adds the "Obedient" trait which acts as a visible flag that the girl has obedience points. Currently used to unlock Reward lessons which will be used to improve disposition, joy, etc. The chance of this can be increased by upgrading the dungeon.

For false, the girl gains a "disobey" flag (up to 10). This adds the "Disobedient" trait which acts as a visible flag that the girl has disobedience points. Currently used to unlock Punishment lessons which will be used to lower character, disposition, etc. The chance of this can be decreased by upgrading the dungeon.

For "stop", the girl gains a "disobey" flag and the girl is unassigned as if the lesson duration ran out normally. The chance of this can be decreased by upgrading the dungeon and assigning guards.

Maths:
The chance of the obey/disobey/runaway statuses is calculated by:
Code: [Select]
chance = random * (2 - (security_level / 1000))
obey = reward_upgrades/total_reward_upgrades > chance
disobey = punishment_upgrades/total_punishment_upgrades < chance
runaway = security_upgrades/total_security_upgrades < chance

The exp modifier from the upgrades is the same as the original schools amount plus:
Code: [Select]
exp += (exp*0.25) * (equipment_upgrades/total_equipment_upgrades)
The trainer skill / knowledge is the same as the original schools. The new schools generates a random ones as usual, but the dungeon lessons can set stats to pull an average from to use as the skill / knowledge levels. The modifier from upgrades is the original amounts plus:
Code: [Select]
teachingchance += (teachingchance*0.25) * (trainer_upgrades/total_trainer_upgrades)
maxskill += (maxskill*025) * (trainer_upgrades/total_trainer_upgrades)

The actual chances for improving stats / max stats is the same as the old lessons. The only difference is a scale can be applied to make the lessons more or less effective based on the girls stats. So a lesson can be less useful as the stat is trains approaches its maximum or in reverse. They can also be restricted to only work (and provide 0 benefits afterwards) based on another requirement. Currently this is used to make the "Talk" lesson in obedience worthless after the "Break" lesson is done and the "Broken" trait is applied to the girl. It also prevents the earlier rewards.

The system is set up to try and be as extensible as possible from the get go, without changing too many internals. It also tries to allow for easy scaling from early to late game.

As the main systems are now in a working (aside from what's noted above), the main thing I need is feed back. Do these systems seem like a good idea? Any requirements or abilities you think it would need? Any obvious problems I haven't realised?

Also, how complex to you want running away to be? Currently its only a "you can't do this lesson yet" restriction till the girl likes you more. I know the jail was just added but is currently featureless, so it could work as a place were "lost" girls have a chance to resurface, but it would require making running away harder then it currently is.

Finally, who do you want to be able to train? I figured allowing free girls to be employed to train others would work. Assign them to a dungeon as a trainer and they can be picked in the training assignment screen. I could implement a new girl type as well, sort of a general trainer. Not as specialised as a free prostitute or service girl, but available from the very start.

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4730
Re: Slave Training (ST) concept
« Reply #37 on: September 20, 2014, 03:17:11 PM »
The system looks solid. Basically, you could take ideas that you like from first two posts in this thread to advance it.

That includes running away. Gear to prevent it, gear to reduce fighting capabilities for "fresh" slaves if they decide to attack guards, etc. In terms of conditions it could depend on stats like joy, disposition, character/obedience, health/fatigue (meaning physical condition).
As for searching them, maybe we can use look around option that every location has, also there could be a chance that you will find the slave in jail few days later. Finally, if you wasted too much time, for example we could add them to our current exploration system, so you could send a team to search for runaway slaves outside the city walls.

In addition to escaping they probably could attack trainers/guards. We have BE (battle engine), we could add restrictive gear, and with this option it would be dangerous to mess around with high level slaves if you don't have high level guards or very good items.


It's too early for balancing, but according to our current concept race means a lot here.
There is race.json in content\db folder. The idea is that there are hundreds of races, so we cannot cover them all, however they could be classified into base races. Thus, in character's data file you can specify actual race (forest elf, high elf, etc.) to show in gui and base rase (elf) to check it when needed.
The file is not loaded into the game yet though.

I also thought about new obedience stat. The higher character, the more difficult (though never impossible) to rise obedience. On the country, the more obedience, the more difficult (though never impossible) to rise character.
Thus, you can break them quickly by removing character stat out of the way, but they will be spineless (=cheap and not too useful) then.

As for trainers, we thought about a new occupation, though it's probably not necessarily. I imagine that strippers with high enough character could train strippers slaves, and so on. I'm not sure how to handle it, I'd wait for Cherry/Xela opinions.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #38 on: September 20, 2014, 03:26:28 PM »
I think we could use trainer as occupation/suboccupation (part of ServiceGirl?) with some extra training bonuses. I didn't get a chance to test this thoroughly yet but there should be an option of "live training" (same formulas as next day training to make it manageable but with some text (each training = label as with girlsmeets/interactions)).

*we'll have to balance this/content this ourselves unless lamoli pops up.

Also, training should be "per AP" not just one thing per day. We'll straiten this thing out with time :)

I am going to push small fix for the beggar event and catch some zzzs, falling asleep behind the desk :(
Like what we're doing?

Offline livingforever

  • Full Member
  • ***
  • Posts: 138
Re: Slave Training (ST) concept
« Reply #39 on: October 12, 2014, 12:37:13 PM »
Hey everyone!
Since I had some free time on my hands without any motivation to do something productive I've been catching up on some concepts.

One thing that I stumbled upon is that suicide seems to be a decided mechanic here and I really object that idea.

First, it is incredibly morbid. I can accept masochism and many other things as fetish, but suicide is simply not a topic that you should present in a videogame, it should never be an option and no character should ever do it.
To put it bluntly, every life is worth living, don't show emotionally unstable people the opposite, that's unbelievably bad taste.
Second, killing characters permanently seems like a bad idea to me. Losing and recapturing a slave is an interesting mechanic, but simply removing the character from the game sucks.
Have fun!

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #40 on: October 12, 2014, 12:46:30 PM »
Hey everyone!
Since I had some free time on my hands without any motivation to do something productive I've been catching up on some concepts.

One thing that I stumbled upon is that suicide seems to be a decided mechanic here and I really object that idea.

First, it is incredibly morbid. I can accept masochism and many other things as fetish, but suicide is simply not a topic that you should present in a videogame, it should never be an option and no character should ever do it.
To put it bluntly, every life is worth living, don't show emotionally unstable people the opposite, that's unbelievably bad taste.
Second, killing characters permanently seems like a bad idea to me. Losing and recapturing a slave is an interesting mechanic, but simply removing the character from the game sucks.
Have fun!

*We'll have resurrection mechanics. It's been discussed a lot already.

I don't know about suicides. We had suicides in the game for a very long time (since before the original Alpha release) and I don't think anyone actually pushed a girl into one (conditioning is pertty harsh and improving or at least normalizing the situation is easy and cheap), not even people how claimed to play for 30+ hours and fished out bugs even Jaeke (our former and quite excellent betatester) couldn't catch.
Like what we're doing?

Offline Thewlis

  • Jr. Member
  • **
  • Posts: 74
  • Its hentai, quiaff?
Re: Slave Training (ST) concept
« Reply #41 on: October 12, 2014, 01:54:28 PM »
Ok, not entirely sure of the best to organise this so I'm just gonna go ahead ramble.

Training apply per AP
First of all training now applies its stat/trait/effect/whatever changes according to the "doNum" property. It defaults to 0. doNum works like so:
Code: [Select]
if amount == 0: amount = self.girl.AP
while amount > self.course.AP:
    # do stuff
    amount -= self.course.AP
Where amount is set to doNum. This allows for the course to either apply its changes a set number of times, or to keep doing so until the girl is out of AP.

One-off-event Training
Lessons can now be one-off-events. These are lessons that have a "labels" dict. The dict contains "state"->"label" pairs. The labels are normal renpy labels and the states are the flags returned from the check_success() function in TrainingJob that specify how the training went.

The default flags are:
  • "normal" = No special state, training went as planned.
  • "obey" = The girl was very obedient, gained an obedient point.
  • "disobey" = The girl was very disobedient, gained a disobedient point.
  • "stop" = The girl refused to be trained and the lesson was unassigned, gained a disobedient point. Used for schooling, notably free girls given XXX courses.
  • "runaway" = The girl managed to runaway.
  • 0 (girl_ap) = The girl had no AP.
  • 1 (hero_ap) = The trainer had no AP.
  • 2 (no_gold) = The player couldn't afford the training.
  • 3 (bad_trainer) = The girl refused to be trained by the trainer.
    Currently only for girls that don't have the Broken trait and have disposition < 500 who have a slave as a trainer.

The 4 flags with numbers aren't 'normal' success states, as they apply before success is checked. They can still however have labels assigned to them. The labels dict requires a "normal" label, all others are optional and will use the default labels if not specified.

"obey" doesn't have a default label, as the labels in renpy must be defined as:
Code: [Select]
label my_training_event(girl, trainer, job, obeys):
    # blah blah
Where "girl" is the girl being trained, "trainer" the trainer, "job" a OneOffTrainingJob instance and "obeys" a boolean that flags whether the girl got the "obey" state. This allows the normal training label to cover both normal and obedient states with optional extra content if the author doesn't want to write an entirely different / cloned label.

The labels are accessed through renpy.call() and so should end with a return statement.

The OneOffTrainingJob class is a special subclass of TrainingJob that is used for these training events as they occur outside of normal next_day logic and still need to be reported. They are used to calculate the check_success state and create the event for the next day screen as normal. To actually apply the training changes you need to put the following somewhere in the label:
Code: [Select]
$ job()
One-off-event training forces a doNum of 1, as it is used like an interaction and only takes up the AP of the girl and trainer when used.

Trainers
Currently all girls can work as trainers. They are assigned just like other jobs and become available to set to training girls in the training assignment screen. Girls can refused to be trained, but only as specified above under the "bad_trainer" state. Non-player trainers can be used for one-off-event training and so the labels should be written using the "trainer" argument instead of "hero".

Items
Some items and traits were added to test using equipment to affect the chance to obey/disobey/runaway.
The traits and items are:
  • Restrained = Decreases chance to runaway. Slave Collar (amulet), Wrist/Ankle Manacles (wrist/feet).
  • Easy to Reward = Increases chance to obey. Pleasurable Vibrator (misc).
  • Easy to Punish = Decreases chance to disobey. Shocking Vibrator (misc).
The items add the traits, and the traits contain a new property called "trEffMax".  trEffMax is used to calculate the maximum that the trait can add to the chances to form a multiplier. Eg: Restrained has a trEffMax of 5. Each item adds 1. If the girl has 3 equipped the multiplier would be 1 - 0.6 = 0.4.

Girls List and Girl Profile
Some slight changes here. As well as "Train" being added as a valid action under TrainingDungeon, "Take Course" has as well. Instead of assigning the action "Take Course" sends you directly to the training assignment screen.

City Jail
I gave the jail a location on both variants of the map so it can be accessed. Fell free to change these whenever.

The jail now has a background and standard look_around action.

The jail has a "Browse Cells" action which triggers "browse_jail_cells" events. Currently no events in, but I figured this would be needed at some point.

The add/remove prisoner functions and list in the CityJail class are currently unused. I decided I wanted to keep the logic for escaped girls separate from the normal jail code so it could be easily managed under 1 class.

Slave Market
I decided to use the current slave market interface for the browsing and release of your escaped slaves for convenience. To this end I recoded the pyt_slave_shopping screen. It not accepts arguments of the following:
Code: [Select]
screen pyt_slave_shopping(store, tt_text, buy_button, buy_tt):
    # blah blah
  • store = The SlaveMarket instance to pull the slaves from.
  • tt_text = The default tooltip text.
  • buy_button = The text to show on the buy button.
  • buy_tt = The tooltip text to show for the buy button.
As such the pytfall.world_actions.slave_market() function now requires you to pass the following arguments:
Code: [Select]
slave_market(store, tt_text, button="Go Shopping", null_button="No Slaves Available", buy_button="Purchase", buy_tt="You can buy this great girl for a measly sum of %s Gold!")

There was 1 or 2 slight changes to the SlaveMarket class to facilitate this change, but most importantly a new property was added called "girlfin". This returns the Finances class for the girl. This was added to the store instance passed to the screen can override this behaviour. In particular this was used so that retrieving escaped slaves from the jail costs their base_price * (0.75 - (0.125 - time)), where time is how long they left in the jail. This imitates the 'bail' of the girl being lower then their normal costs, and allows it to increases the long they are in jail.

Running Away
Most importantly, this release includes the RunawayManager class. The class that handles all the logic for escaped girls.

The RunawayManager instance can be found at pytfall.ra, and is included in normal pytfall.next_day behaviour.

Currently only slave girls can run away. I thought about making it so that free girls would simple leave your service immediately, but don't know if you want them gone for good, placed back into the girls meet code, whatever.

If a slave manages to successfully get a runaway state during training their training stops and are added to the RunawayManager.girls list. This sets their location to "Unknown", action to "Hiding" and prevents you from interacting with them in the girls list and girl profile screen apart from viewing their gallery. You can filter escaped girls in the girls list screen using the "Run Away" filter on the right.

If the RunawayManager contains girls it will push an event during the next_day screen in the training section telling you which of your girls have escaped. It also contains debug info on their status if developer mode is on.

There is debug code in the class which adds the first 2 slaves in the players girls list to the manager on day 1 to help testing.

The manager calculates the girls "status" which is currently an average of their vitality, intelligence and agility stats over their maxes. This figure is passed to the dice function to calculate the chances for the following next_day behaviour:
  • All look_around events are cleared.
  • Any girls that should be released from jail are.
  • Any girls that are in jail have their jail timers decreased.
  • Any girls that aren't in jail have their escaped timers increased.
  • Any girls that have been free for over 20 days have a chance to escape. These girls are removed from the players list.
    if dice(status) and dice(escape_time)
  • Any girls that have been free for over 10 days have a chance to be jailed. These girls are added to the managers jail_cache.
    if dice(status) and len(jail_cache) < 10
  • Any girls that have been free for over 5 days have a chance to generate a look_around event.
    if dice(status) and len(look_cache) < 5

The look_cache events will use the label contained in the new Girl property "runaway_look_event". This is "escaped_girl_recapture" by default which is a generic recapture label which guarantees capture. These events must call "pytfall.ra.retrieve(girl)" to have the girl returned to the player if desired.

Currently the chances generated using the girls status gives a decent amount of chances to find the girls in look_around events and in the jail. The limits on the amounts though would decrease this is too many escape, a valid outcome of trying to find so many people at once. 20 days seems like a decent amount of time to try and recapture a girl, and the girls are only in jail for 5 days.

End~
Everything should be working. I might have introduced a bug where the events manager removes the wrong events in the kill_event function, but I'm gonna have to do more testing to find out.

How do we want to handle free girls in relation to escaping?

Do we want to change the numbers in the runaway manager?

Should I integrate the unused CityJail code into the slave market interface so characters can be added to the jail without needed to use the RunawayManager?

As the knowledge and skill scores for the trainer during training can be calculated independently for different lessons (dancing classes can use different stats to sex classes for instance) I felt that allowing all girls to teach others was a good idea. It removes the need for a specific skill, although one can be added to provide bonuses for if they do teach. Maybe add a new occupation?

I'll post more here later if I forget anything.
« Last Edit: October 12, 2014, 01:56:44 PM by Thewlis »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #42 on: October 12, 2014, 02:36:33 PM »
...

We should all take a look at the ST when time permits (not soon for me I fear) but from the explanation it sounds exactly what we were talking about :)

I thought about making it so that free girls would simple leave your service immediately, but don't know if you want them gone for good, placed back into the girls meet code, whatever.

How do we want to handle free girls in relation to escaping?

*Free girls should not be trainable per concept (law of the land). We need to discuss enslavement mechanics, I wanted this to be something rare/difficult. Captured girls will be trainable (after buying a permit (I want this to be "capture in exploration" --> Jail --> "Slave registration" --> "Training")), untrained slaves you can buy from Stan ot acquire otherwise. Basically if a girl is not registered as you property is offlimits for training as a slave.

They will leave if not paid for a while and/or their employment is mismanaged. In such cases, they are sent to the girlsmeets pool and have a really low disposition so they cannot be easily hired again.

Do we want to change the numbers in the runaway manager?

Need to take a look at that first.

Should I integrate the unused CityJail code into the slave market interface so characters can be added to the jail without needed to use the RunawayManager?

Maybe, I wanted to use jail as a holding spot for girls captured during exploration, that has nothing to do with the ramanager.

As the knowledge and skill scores for the trainer during training can be calculated independently for different lessons (dancing classes can use different stats to sex classes for instance) I felt that allowing all girls to teach others was a good idea. It removes the need for a specific skill, although one can be added to provide bonuses for if they do teach. Maybe add a new occupation?

Occupation like "Trainer"? I think we wanted to have something like that. Maybe to modify effects even further, traits should also participate in teaching, maybe intelligence + character for extra mods. We can handle that when we (or Dark :D) balance out the system.

Edit: I still can't pull your update? Going to try again tomorrow.
« Last Edit: October 12, 2014, 02:38:37 PM by Xela »
Like what we're doing?

Offline Thewlis

  • Jr. Member
  • **
  • Posts: 74
  • Its hentai, quiaff?
Re: Slave Training (ST) concept
« Reply #43 on: October 12, 2014, 02:52:10 PM »
Yeah that was my bad. The workbench was being dumb. Should be done now.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6881
  • "It's like hunting cows"
Re: Slave Training (ST) concept
« Reply #44 on: October 12, 2014, 02:55:27 PM »
Yeah that was my bad. The workbench was being dumb. Should be done now.

Great, I'll pull it tomorrow morning.
Like what we're doing?