Merge branch 'master' of github.com:laochailan/taisei

This commit is contained in:
Andrew "Akari" Alexeyew 2012-08-10 23:14:53 +03:00
commit f5f03275fc
11 changed files with 128 additions and 127 deletions

View file

@ -36,8 +36,6 @@ install(DIRECTORY shader DESTINATION ${DATA_DIR})
install(DIRECTORY models DESTINATION ${DATA_DIR}
FILES_MATCHING PATTERN "*.obj")
install(FILES "story.txt" DESTINATION ${DATA_DIR})
# uninstall target
configure_file(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"

View file

@ -171,6 +171,7 @@ void take_screenshot(void)
if(!out)
{
perror("fopen");
free(data);
return;
}

View file

@ -65,7 +65,7 @@ static void key_action(MenuData *menu, int sym) {
if(--menu->cursor < 0)
menu->cursor = menu->ecount - 1;
} while(menu->entries[menu->cursor].action == NULL);
} else if((sym == tconfig.intval[KEY_SHOT] || (sym == SDLK_RETURN && !keys[SDLK_LALT] && !keys[SDLK_LALT])) && menu->entries[menu->cursor].action) {
} else if((sym == tconfig.intval[KEY_SHOT] || (sym == SDLK_RETURN && !keys[SDLK_LALT] && !keys[SDLK_RALT])) && menu->entries[menu->cursor].action) {
menu->quit = 1;
menu->selected = menu->cursor;
} else if(sym == SDLK_ESCAPE && (menu->type == MT_Transient || menu->abortable) && menu->abortable >= 0) {

View file

@ -668,7 +668,7 @@ static void options_key_action(MenuData *menu, int sym) {
if(menu->cursor < 0)
menu->cursor = menu->ecount - 1;
} while SHOULD_SKIP;
} else if((sym == tconfig.intval[KEY_SHOT] || (sym == SDLK_RETURN && !keys[SDLK_LALT] && !keys[SDLK_LALT])) && menu->entries[menu->cursor].action) {
} else if((sym == tconfig.intval[KEY_SHOT] || (sym == SDLK_RETURN && !keys[SDLK_LALT] && !keys[SDLK_RALT])) && menu->entries[menu->cursor].action) {
menu->selected = menu->cursor;
OptionBinding *binds = (OptionBinding*)menu->context;

View file

@ -22,13 +22,15 @@ Dialog *stage1_dialog(void) {
dadd_msg(d, Left, "It's me!");
else
dadd_msg(d, Left, "Just someone?");
dadd_msg(d, Right, "How dare you pass the lake of the fairies!\nIt's a dangerous area for weak humans!");
dadd_msg(d, Right, "How dare you pass the lake of the fairies?!\nIt's a dangerous place for weak humans!");
if(global.plr.cha == Marisa) {
dadd_msg(d, Left, "You call me weak?");
dadd_msg(d, Right, "Yes!");
dadd_msg(d, Right, "I do!");
} else {
dadd_msg(d, Left, "I'm just walking by. Any problem with that?");
dadd_msg(d, Right, "Of course! It's not right!");
dadd_msg(d, Left, "I'm just passing by. Any problem with that?");
dadd_msg(d, Right, "Of course! You can't do that!");
}
dadd_msg(d, Right, "I'll just freeze you!");

View file

@ -18,16 +18,16 @@ Dialog *stage2_dialog(void) {
dadd_msg(d, Right, "Huh? No, you? Everone is upset, you know?\nSo I came too.");
dadd_msg(d, Left, "Why, what happened?");
dadd_msg(d, Right, "The border has been broken.");
dadd_msg(d, Left, "Is that even possible!?");
dadd_msg(d, Left, "Is that even possible?!");
dadd_msg(d, Right, "Look, there is a way outside\nright behind us.");
dadd_msg(d, Left, "But I have the feeling that you\n won't let me pass, haha");
dadd_msg(d, Left, "But I've got the feeling that you\n won't let me pass, haha");
} else {
dadd_msg(d, Left, "This must be the place ...");
dadd_msg(d, Left, "This must be the place...");
dadd_msg(d, Right, "Hello? ");
dadd_msg(d, Left, "You came here because of the\n\"crack\", too? Where is it?");
dadd_msg(d, Right, "Right behind us, but ...");
dadd_msg(d, Right, "Right behind us, but...");
dadd_msg(d, Left, "Ok, I'll go there.");
dadd_msg(d, Right, "No! Don't make it more of a\ntrouble than it already is!");
dadd_msg(d, Right, "No! Don't make it more\ntroubling than it already is!");
}
return d;

View file

@ -14,9 +14,9 @@
Dialog *stage3_dialog(void) {
Dialog *d = create_dialog(global.plr.cha == Marisa ? "dialog/marisa" : "dialog/youmu", "masterspark");
dadd_msg(d, Left, "Ugh, it's like bugs being attracted\nby the light ...");
dadd_msg(d, Right, "Yes! Because the light makes us strong!");
dadd_msg(d, Right, "This place is full of it! So feel my tremendous power!");
dadd_msg(d, Left, "Ugh, it's like bugs being attracted by the light...");
dadd_msg(d, Right, "That's right! The light makes us strong!");
dadd_msg(d, Right, "This place is full of it, so feel my tremendous power!");
return d;
}

View file

@ -17,18 +17,18 @@ Dialog *stage4_dialog(void) {
dadd_msg(d, Right, "Ah! Intruder! Stop being so persistent!");
if(global.plr.cha == Marisa) {
dadd_msg(d, Left, "What? I mean where am I?");
dadd_msg(d, Right, "You are in the ...");
dadd_msg(d, Right, "STOP! That's secret for intruders!");
dadd_msg(d, Left, "... in the mansion of the\nevil mastermind, right?");
dadd_msg(d, Left, "What? I mean, where am I?");
dadd_msg(d, Right, "You are in the...");
dadd_msg(d, Right, "STOP! I won't tell that to intruders!");
dadd_msg(d, Left, "...in the mansion of the\nevil mastermind, right?");
dadd_msg(d, Right, "AHH! Anyway! You won't reach\nthe end of this corridor!");
} else {
dadd_msg(d, Left, "So you are the owner of this place?");
dadd_msg(d, Right, "No, I'm just the guard!");
dadd_msg(d, Left, "What is there to be guarded?");
dadd_msg(d, Right, "My master ... I mean that's a secret!");
dadd_msg(d, Right, "My master... I mean, that's a secret!");
dadd_msg(d, Left, "...");
dadd_msg(d, Right, "So stop asking questions!\nSecrets are secrets!\n ... and I will beat you now!");
dadd_msg(d, Right, "So stop asking questions!\nSecrets are secret!\n...\nAnd I will beat you now!");
}
return d;
@ -37,8 +37,8 @@ Dialog *stage4_dialog(void) {
Dialog *stage4_dialog_end(void) {
Dialog *d = create_dialog(global.plr.cha == Marisa ? "dialog/marisa" : "dialog/youmu", "masterspark");
dadd_msg(d, Left, "Where is your master now?");
dadd_msg(d, Right, "Didn't I say? At the end of this corridor,\nthere is a door.");
dadd_msg(d, Left, "Now, where is your master?");
dadd_msg(d, Right, "Didn't I tell you? At the end of this corridor,\nthere is a door.");
dadd_msg(d, Right, "Just leave me alone.");
return d;

View file

@ -25,7 +25,7 @@ Dialog *stage5_boss_dialog(void) {
dadd_msg(d, Left, "Why? You aren't involved in this, are you?");
dadd_msg(d, Right, "I don't have time for your suspicions now.");
dadd_msg(d, Left, "Sounds very suspicious, actually.");
dadd_msg(d, Right, "Ok, let's finish this quickly.");
dadd_msg(d, Right, "Ok, let's finish this quickly.");
return d;
}

View file

@ -13,24 +13,24 @@ Dialog *stage6_dialog(void) {
Dialog *d = create_dialog(global.plr.cha == Marisa ? "dialog/marisa" : "dialog/youmu", "masterspark");
dadd_msg(d, Left, "You are responsible?");
dadd_msg(d, Right, "Yes ...");
dadd_msg(d, Right, "Yes...");
if(global.plr.cha == Marisa) {
dadd_msg(d, Left, "I'll masterspark you now.");
dadd_msg(d, Right, "What? Why do you want to fight?\nDo you even understand, what I did here?");
dadd_msg(d, Left, "I understand it's a huge mess! Cracking\nthe border, a giant mansion, a giant tower ...");
dadd_msg(d, Right, "What? Why do you want to fight?\nDo you even understand what I did here?");
dadd_msg(d, Left, "I understand that it's a huge mess!\nCracking the border, a giant mansion, a giant tower...");
dadd_msg(d, Left, "At first I was curious. But now\nI just want to finish this! Seriously.");
} else {
dadd_msg(d, Left, "How did you manage to do all of this?");
dadd_msg(d, Right, "A kind person granted me an unknown power.\nAnd thanks to that I was able\nto create this little place for myself.");
dadd_msg(d, Right, "A kind person granted me an unknown power,\nand thanks to that I was able to\ncreate this little place for myself.");
dadd_msg(d, Left, "Why did you create *this* place for yourself?");
dadd_msg(d, Right, "Because it is great for research!\nAnd it's almost done! Just a matter of moments ...");
dadd_msg(d, Right, "Because it is great for research!\nAnd it's almost done! Just a matter of moments...");
dadd_msg(d, Right, "And the true potential of my power will be\nunleashed!");
dadd_msg(d, Left, "That means ...\nI'll better finish you off quickly?");
dadd_msg(d, Left, "That means...\nI'll better finish you off quickly?");
}
dadd_msg(d, Right, "Why do you have to be so ignorant?");
dadd_msg(d, Right, "... sorry, this is more important than you!");
dadd_msg(d, Right, "...\nSorry, this is more important than you!");
return d;
}

190
story.txt
View file

@ -1,19 +1,20 @@
--------------------------------------------------------------------------------
○ Taisei Project
Characterization and Story
Characterization and Story
2012/08/06
2012-08-10
--------------------------------------------------------------------------------
================================================================================
■ 0. Information
================================================================================
This file contains spoiler and other content aimed at players who have cleared
the game.
This file contains spoilers and other content intended for players who have
cleared the game.
If you still wish to proceed, scroll down.
If you still think you want to proceed, scroll down.
@ -47,11 +48,9 @@
■ 1. Incident
================================================================================
Yet another culprit terrorizes the land of dreams. This time, the functioning
of the barrier is disrupted. Unknown powers reach for the control of the
borders themselves and for the matter beyond them: Profit, blur and the
relativity of limits.
Another villain threatens to turn the land of dreams into a place of terror.
The barrier is disrupted. Unknown forces reach for control over the borders
themselves, throwing all of Gensokyo into chaos.
================================================================================
■ 2. Characters
@ -60,48 +59,50 @@
○ Kirisame Marisa
Because it's a fan game after all.
Because its a fan game after all.
In the first morning of spring, Marisa checked the shop's shelves as she
noticed that her cash box was all empty. There was nobody around. Normally
at least a few customers would drop by … but this state left Marisa really
bored.
She glanced around the shop, sighted … but there was a paper on her table.
A brand new issue of the Bunbunmaru Newspaper. At least that one is never
late.
Just at the beginning of spring, Marisa went to check the shops shelves,
only to notice that her cash box was as empty as the shop itself. Usually,
at least a few customers would show up eventually, but not that day.
"News Exclusive: Border Broken?"
She was really bored.
The headline catched her eyes in an instant.
After a quick glance around the store, a brand new issue of the Bunbunmaru
Newspaper that was lying on the table caught her eyes. At least that one is
never late.
"[…] large gathering of curious youkai […]"
“News Exclusive: Border Broken?!”
"Ok I'll better take a look!", she thought, happy about having found an
exciting alternative to looking after her empty shop.
Her eyes flashed in excitement as she read on.
"Time to spark som ass!"
“[…] large gathering of curious youkai […]”
“Okay, Ill better check it out!”, she thought, happy about having found a
better pastime than looking after her depressingly empty shop.
“Time to spark some ass!”
○ Konpaku Youmu
Because Youmu is awesome.
A blossomless spring morning in the Netherworld … or rather before
morning. Shattering noise cut the gardens of passed souls. A noise not even
ghosts can enjoy.
This ending night was in fact nothing like a normal night. The whole
Netherworld was awake early, including Yuyuko-sama and of course the
Because Youmu is awesome.
A blossomless spring dawn in the Netherworld. Shattering noises cut through
the gardens of passed souls. Noises not even ghosts can enjoy.
This ending night was in fact nothing like a normal night. The entire
Netherworld was awake early, including Yuyuko-sama and of course a certain
half-phantom girl.
"I cannot sleep. I think the restless should at least get this kind of rest
… this really has to be changed or I will get lunatic."
"Of course, Yuyuko-sama. I will slash every little clangor in this world
until your sleep is left undisturbed!"
“I cannot sleep like this. Can the restless not have at least this kind of
rest? Something really needs to be done about this, or I will go insane.”
“Of course, Yuyuko-sama. I shall slash every little clangor in this world
until your sleep is left undisturbed!
The fact that Hakugyokuro is closely connected to the border makes it
sensitive to changes of the borders structure. Youmu knew that, so she
decided to look after this "border breaking" rumor first.
sensitive to changes of the borders structure. Youmu was aware of that,
which led her to the decision to investigate this “border breaking” rumor
first.
================================================================================
@ -111,7 +112,7 @@
○ Stage 1: Misty Lake
○ Stage 2: Walk Along the Border
○ Stage 3: Tunnel of Light
○ Stage 3: Through the Tunnel of Light
○ Stage 4: Forgotten Mansion
○ Stage 5: Climbing the Tower of Babel
○ Stage 6: Roof of the World
@ -124,83 +125,82 @@
○ Stage 1 Boss
Cirno
Of course she has no idea of the course of events, but she still steps into
action full of power and courage to bend history to her favour.
Clueless about the course of events, she still jumps into action with full
force. Her reckless courage may seem like foolishness to others, but she is
bound and determined to bend history in her favor.
○ Stage 2 Boss
Kagiyama Hina
She was somehow the first considerably strong youkai at the place of action,
therefore she ended up as the inofficial overseer of the growing crowd. In
fact, the only thing she wanted was to maintain a bit of law and order in
her forest.
Hina was the first considerably strong youkai to show up at the place of
action, which is why she ended up as the inofficial overseer of the growing
crowd. Actually, the only thing she wanted was to maintain a bit of law and
order in her forest.
○ Stage 3 Boss
Wriggle
When a half-youkai like Wriggle gets reasonable amounts of power, it is only
natural for them to get a bit self confident. Fortunately, it wasn't enough
to get the final boss because of this.
When half-youkai like Wriggle gain a reasonable amount of power, it is only
natural for them to become a bit overconfident. Fortunately, that alone
wasnt enough for her to become the final boss.
The story doesnt take place underground after all.
The story doesn't take place underground after all.
○ Stage 4 Boss
Kurumi
She is a friend of Elly's … or at least her former kouhai. Somehow she got
dragged into a longer journey and returned now together with Elly. She tries
her best to keep Elly's back free of all the curious youkai (and players)
entering from the tunnel. But she got sick of her guard job a long time ago.
She is a friend of Ellys… or at least her former kouhai. Some time ago,
Elly dragged her along when she left her mansion to set out on a longer
journey, and now they have returned. Still trying her best at keeping all
the curious youkai (and players) who are entering from the tunnel off
Ellys back, she grew tired of being her bodyguard long ago.
Somehow theyve really taken a liking to each other.
They really like each other … somehow.
○ Stage 5 Boss
Nagae Iku
She slipped through the guard right after the player. Who knows what she is
after. But there are two things she hates:
She slipped through the guard right after the player. No one knows what
she is after, but there are two things she hates:
Being interrupted, when she is in a hurry and always being suspected for
Being interrupted when she is in a hurry and always being suspected for
everything.
That happening both at the same time, she is quite unamused. But that makes
her seem even more suspicious, doesn't it?
Both happening at the same time has made her lose her temper.
But that makes her seem even more suspicious, doesn't it?
○ Stage 6 Boss
Elly
She quit her office guarding that mansion in Lotus Land Story and obtained a
new power from the outside world: the power to manipulate Relations
(i.e. she can do fancy maths). Thus she was able to trick Gensokyo's
border*. Creating herself a place to research using her new powers.
What would she want to research on that high tower? The Theory of Everything
of course.
Maybe she didn't even plan to use it to anyones harm. She certainly didn't
know that the location she chose for here tower would cause that much
trouble. But that's what scientists are like, only concentrating on what's
important.
Her spellcards are based on physical phenomena. Turning her experiments into
weapons.
fun fact: Taisei actually uses complex math for projectile positioning.
She quit her task of guarding that mation in Lotus Land Story and obtained
a new power from the outside world: the power to manipulate relations
(i.e. she can do fancy maths). This enabled her to trick Gensokyos border*
and create herself a new place for research using her new powers.
* It's not like the border is a real limitation for youkai. Lots of youkai
are powerful enough to pass through there without a problem. Some even
visit the outside world regularily to hunt humans for food.
On that high tower, she wants to research The Theory of Everything.
Maybe she didnt even plan to use it to anyones harm. She certainly didnt
expect the location she chose for her tower to cause that much trouble.
But thats what scientists are like. Research comes first.
Her spellcards are based on physical phenomena, turning her experiments
into powerful weapons.
Fun Fact™: Taisei actually uses complex math for projectile positioning.
* Its not like the border is an absolute barrier for youkai. It is not
uncommon for powerful youkai to pass through there without much trouble.
Some even visit the outside world regularly to hunt humans for food.
But Elly broke it at some place and made it lead to her own place
*somewhere inbetween*, which is unusual and shouldn't be easily possible.
*somewhere inbetween*, which is unusual and shouldnt be easily possible.