Compare commits

...
Sign in to create a new pull request.

44 commits

Author SHA1 Message Date
a0790c1ea0 💡 More #WritingWonders notes 2023-01-13 13:43:46 -06:00
0289dc1563 💡 Update some info from #WritingWonders 2023-01-13 12:14:31 -06:00
9c2142ea66 🐛 Missing punctuation 2022-10-25 09:54:51 -05:00
aeba1996ba Demote Kzinti Pirate 2022-10-23 13:50:50 -05:00
3d9ce3bf29 📝 Add idea for Tellarite character 2022-03-23 13:11:13 -05:00
e87d0f3e96 📝 Jot some notes 2022-03-01 20:55:16 -06:00
6f44b6f01d Add characters in lower_decks 2022-02-09 16:41:31 -06:00
83facdc4d0 💡 Add a few more notes regarding Kzinti 2022-02-04 11:17:40 -06:00
9ff44ba57e 💡 Add some notes for ideas 2022-01-30 20:11:09 -06:00
81c2bb55b0 💬 More of script 2022-01-30 16:43:50 -06:00
27027475c8 💬 A bit more color 2022-01-30 15:53:03 -06:00
da7db84255 💬 A few tweaks to script 2022-01-23 12:10:11 -06:00
e1e27fbf11 💬 Add to intro 2022-01-15 11:50:54 -06:00
90a1e7f117 ♻️ Move OutOfBed to lower_decks description
It's easier to read there
2022-01-15 11:30:03 -06:00
3b3bd5fa0e 💬 Fill out pirate's announcement.
Also add boatswain's call
2022-01-12 22:15:51 -06:00
22c55572f7 💬 Add some internal dialog to script 2022-01-12 16:46:04 -06:00
0151400689 👷 Update Makefile with external libs 2022-01-12 09:39:54 -06:00
aa0aac7983 👷 Improve Makefiles 2022-01-12 08:40:51 -06:00
270aa3ff3c ♻️ Wake up routine runs once 2022-01-11 20:55:41 -06:00
4d93185b75 💬 Add pirate's appearance to script 2022-01-11 19:08:28 -06:00
edcb4a08f9 🚚 Move Computer into own file 2022-01-11 19:07:15 -06:00
2d45970029 Add red alert that stops after exiting bunk 2022-01-11 16:08:48 -06:00
407d5c9d1b 🐛 Fix name of bunk 2022-01-11 16:00:16 -06:00
8afeaa18c5 👷 Remove current directory from include path in Makefile
No longer needed since everything is in includes
2022-01-11 15:59:41 -06:00
8a6446617d 🚚 Move include files to subdirectory 2022-01-11 14:39:18 -06:00
fd508d9ab0 🐛 Allow computer to always set lights 2022-01-11 11:17:25 -06:00
a8bf9baaf8 🐛 Ensure computer is in every room or enterable 2022-01-11 10:47:23 -06:00
670fb183e1 Add the computer character
Still a bit buggy, but responds to a few commands
2022-01-11 10:22:02 -06:00
1712c20833 💬 More of first scene
It's slow going
2022-01-11 06:51:23 -06:00
Dan Jones
feafcb3da5 🚚 Rename story_outline to script
It's just quicker to type
2022-01-10 11:54:02 -06:00
Dan Jones
1ac42a1147 💬 Fill out a bit more of the first scene of script 2022-01-10 11:52:29 -06:00
Dan Jones
afda829d46 🐛 Missing comma in bunk 2022-01-10 11:06:59 -06:00
Dan Jones
2327204ec1 👷♻️ Use variable names in Makefile 2022-01-10 11:05:59 -06:00
Dan Jones
4c64bc7773 🚧 Start work on script 2022-01-10 11:05:41 -06:00
Dan Jones
86a2ec5ae5 💬 Update take message for poster 2022-01-10 10:05:34 -06:00
Dan Jones
285653039d 👷 Update Makefile for all inf files 2022-01-10 10:03:56 -06:00
21782b6660 👷 Have make build both ulx and z5 2022-01-10 09:48:37 -06:00
877eff18ac 💬 Change "film" to "game" in disclaimer 2022-01-10 09:47:30 -06:00
7ea3d64c82 🚧 Adding items 2022-01-09 23:28:56 -06:00
64381da786 ♻️ getting classy 2022-01-09 22:55:57 -06:00
229633cd48 👷 Add Makefiles 2022-01-09 19:52:04 -06:00
a54e850bdd 🙈 Ignore more compilation artifacts 2022-01-09 19:32:15 -06:00
45f221ae29 🚧 We have rooms 2022-01-09 18:25:05 -06:00
098a6ac4f0 🚧 It compiles! 2022-01-09 13:45:19 -06:00
15 changed files with 375 additions and 1 deletions

3
.gitignore vendored
View file

@ -1,2 +1,5 @@
remontel.z5
remontel.ulx
gametext.txt
gameinfo.dbg
script.pdf

17
Makefile Normal file
View file

@ -0,0 +1,17 @@
.PHONY: default
libs = lib/Parser.h lib/VerbLib.h lib/Grammar.h
default: remontel.ulx remontel.z5
remontel.ulx: remontel.inf includes/*.inf $(libs)
inform -G +include_path=includes,lib $<
remontel.z5: remontel.inf includes/*.inf $(libs)
inform +include_path=includes,lib $<
lib/%.h:
$(MAKE) -C '$(@D)' '$(@F)'
script.pdf: script.fountain
screenplain $< $@

View file

@ -14,4 +14,4 @@ The bridge crew and senior officers have all been abducted. It's now up to you t
## Disclaimer
Star Trek and all related marks, logos and characters are solely owned by CBS Studios Inc. This fan production is not endorsed by, sponsored by, nor affiliated with CBS, Paramount Pictures, or any other Star Trek franchise, and is a non-commercial fan-made film intended for recreational use. No commercial exhibition or distribution is permitted. No alleged independent rights will be asserted against CBS or Paramount Pictures.
Star Trek and all related marks, logos and characters are solely owned by CBS Studios Inc. This fan production is not endorsed by, sponsored by, nor affiliated with CBS, Paramount Pictures, or any other Star Trek franchise, and is a non-commercial fan-made game intended for recreational use. No commercial exhibition or distribution is permitted. No alleged independent rights will be asserted against CBS or Paramount Pictures.

34
includes/Characters.inf Normal file
View file

@ -0,0 +1,34 @@
Include "Computer.inf";
NPC pirate_leader "Pirate Leader"
with name 'pirate' 'leader' 'tellarite',
description "The Pirate Leader is a stout, but menacing Tellarite.^
Her large tusks are very prominent, much larger than other
Tellarites you've known.^
(She must be a northern Tellarite.)^
Despite her small stature, you can see she's not to be taken lightly.",
has ~proper female;
NPC pirate_second "Pirate Second in Command"
with name 'pirate' 'xo' 'kzinti',
description "The pirate XO is a large, imposing, Kzinti male.^
His fangs are clearly visible coming out of his mouth.^
You'd heard that Kzinti were cat-like, but his imposing frame
reminds you of a jaquar, ready to pounce on unsuspecting prey.",
has ~proper male;
NPC gomez "Christi Gomez" lower_decks
with name 'ensign' 'christi' 'gomez',
description "Ensign Christi Gomez is your best friend on the ship.^
You and she attended the academy together, and were
thrilled to be assigned to the same ship.",
found_in lower_decks
has female;
NPC ruux "Ruux" lower_decks
with name 'ensign' 'ruux' 'rhaandarite',
description "Ensign Ruux is a Rhaandarite. He has a wide and high forehead.^
He is calm and soft-spoken, and very tall by human standards.^
At 78 years old, he is quite young for his species.",
found_in lower_decks
has male;

39
includes/Classes.inf Normal file
View file

@ -0,0 +1,39 @@
Class Room
with add_to_scope [;
AddToScope(computer);
PlaceInScope(computer);
AddToScope(lights);
PlaceInScope(lights);
],
has light;
Class Set
with before [;
Examine: return false;
default: print_ret "You can't do that with ", (the) self, ".";
],
has scenery;
Class Decoration
with before [;
Take,Pull,Push,PushDir:
print_ret "You can't do that with ", (the) self, ".";
],
has static;
! Class Furniture
! class Decoration,
! with before [;
! Take,Pull,Push,PushDir:
! print_ret (the) self, " is too heavy for that.";
! ],
! has supporter;
Class NPC
with life [;
Answer,Ask,Order,Tell:
"Just Talk To ", (the) self, ".";
Talk:
"Hello, Ensign.";
],
has animate proper;

35
includes/Computer.inf Normal file
View file

@ -0,0 +1,35 @@
Object computer "Computer"
with name 'computer' 'ship',
description "The computer of the ship uses non-sentient artificial intelligence^
It can perform many tasks and answer questions.",
found_in [; rtrue; ],
orders [loc ;
loc = parent(player);
SetTo:
if (noun == lights && second == 'full') {
give loc light;
print_ret "Lights at full.";
}
if (noun == lights && (second == 'zero' || second == 'off')) {
give loc ~light;
print_ret "Lights are off.";
}
print_ret "I do not know how to set ", (the) noun, " to ", (address) second;
Open:
switch(noun) {
bunk:
give noun open;
print_ret (The) noun, " is open.";
}
Close:
switch(noun) {
bunk:
give noun ~open;
print_ret (The) noun, " is closed.";
}
Tell:
! @todo fill this out for various things to talk about
print_ret "You want me to tell you about ", (string) second;
NotUnderstood: print_ret "I do not understand.";
],
has animate scenery;

25
includes/Globals.inf Normal file
View file

@ -0,0 +1,25 @@
Global woke = false;
[ OutOfBed;
if (woke) rfalse;
woke = true;
StopDaemon(red_alert);
"^^The klaxon stops, and briefly, the ship is quiet. Eerily quiet.
The other officers and crewmen around you stand and stare, waiting.
^^
A boatswain's call is briefly heard, and then an announcement begins.
The voice, commanding but craggly, is unfamiliar.
^^
~Attention crew of the USS Remontel. Your captain, bridge crew,
and senior officers are in our custody. Your ship is under our control.~
^^
~Anybody who attempts to oppose us will be met with a swift end.
If you stay where you are and do not interfere in our plans,
you will be released safely shortly.~
^^
You stand there, a bit dumbfounded. Why would someone capture this,
of all ships? The Remontel is one of the most insignificant ships
in the fleet.
^^
";
];

17
includes/Items.inf Normal file
View file

@ -0,0 +1,17 @@
Decoration poster "Starfleet recruitment poster" bunk
with name 'poster' 'recruitment',
description "A poster is attached to the roof of your bunk.^
This poster is what inspired you to join Starfleet.",
with before [;
Take: print_ret (The) self, " is stuck on the ceiling.";
];
Decoration red_alert "Red alert"
with daemon [;
"^A red alert klaxon sounds";
];
Set lights "Lights"
with name 'lights',
found_in [; rtrue; ],
has static concealed;

9
includes/MoreVerbs.inf Normal file
View file

@ -0,0 +1,9 @@
[ TalkSub;
if (noun == player) print_ret "Nothing you hear surprises you.";
if (RunLife(noun,##Talk) ~= false) return;
"At the moment, you can't think of anything to say.";
];
Verb 'talk' 't//' 'converse' 'chat' 'gossip'
* 'to'/'with' creature -> Talk
* creature -> Talk;

14
includes/Rooms.inf Normal file
View file

@ -0,0 +1,14 @@
Room lower_decks "Lower Decks Corridor"
with description [;
if (player in lower_decks) OutOfBed();
"You stand in a lower decks corridor.
This corridor contains several bunks
lining the walls where the lower deckers
sleep.";
];
Room bunk "your bunk" lower_decks
with name 'bunk' 'bunks',
description "Your bunk is like every other bunk on the lower decks.^
It's barely big enough to fit you. But it's home.",
has proper enterable container static ~open ~light;

3
lib/.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
*
!.gitignore
!Makefile

23
lib/Makefile Normal file
View file

@ -0,0 +1,23 @@
.PHONY: default
default: Parser.h Grammar.h VerbLib.h
parser.h grammar.h verblib.h version.h english.h:
wget https://ifarchive.org/if-archive/infocom/compilers/inform6/library/inform6lib-6.12.5.zip
unzip -u -j inform6lib-6.12.5.zip
rm -v inform6lib-6.12.5.zip
Parser.h: parser.h Version.h
ln -s $< $@
Grammar.h: grammar.h English.h
ln -s $< $@
VerbLib.h: verblib.h
ln -s $< $@
Version.h: version.h
ln -s $< $@
English.h: english.h
ln -s $< $@

60
notes.md Normal file
View file

@ -0,0 +1,60 @@
# Notes
## Character ideas
- Christi Gomez
+ Species: Vissian
+ Third gender
+ Parents defected to Federation so that she could have a real life
+ Ensign
- Ruux
+ Need first name, maybe
+ Species: [Rhaandarite][]
+ Young: 78 years old
+ Naive, insecure
- Dorkna Miklis
+ Species: [Zakdorn][]
+ Weasley, untrustworthy
+ Probably another ensign
- Need a Catian or [Kzinti][]
+ Kzinti pirate
- Maybe the leader
- [Further resource][Kzinti-Theurgy]
+ Maybe Caitian crew member can relate to, or seduce, him
- Maybe not. Kzinti females are not intelligent
- Also Kzinti only mate for reproduction
- But, maybe might work
- [Cygnian][]
+ Has some type of clairvoyance
+ Maybe good pirate
+ cat-like
- [Tellarite][]
+ Should be one of the pirates
+ Should have prominent tusks, like [Tevrin Krit][]
* Make a joke about being a Northern Tellarite
+ Should have to insult him to beat some puzzle
* Similar to defeating the Sword Master in Monkey Island
- Pirates
+ Maybe consists entirely of non-primate species
+ Angry with primates taking lead in Federation
+ maybe leader should be Tellarite
## Plot ideas
Time period: couple years after the Khitomer Accords. There is peace with
Klingons. Romulans have been relatively quiet. The Federation is at relative
piece with the two known quadrants.
Must defeat pirate captain with battle of insults. Could be modeled after Sword
Master in Secret of Monkey Island.
Should include a holodeck challenge. Holodeck should be a very new tecnology at
this time.
[Zakdorn]: https://memory-alpha.fandom.com/wiki/Zakdorn
[Rhaandarite]: https://memory-alpha.fandom.com/wiki/Rhaandarite
[Kzinti]: https://memory-alpha.fandom.com/wiki/Kzinti
[Kzinti-Theurgy]: https://uss-theurgy.com/w/index.php?title=Kzinti
[Cygnian]: https://memory-beta.fandom.com/wiki/Cygnian
[Tellarite]: https://memory-alpha.fandom.com/wiki/Tellarite
[Tevrin Krit]: https://memory-alpha.fandom.com/wiki/Tevrin_Krit

View file

@ -0,0 +1,39 @@
Constant Story "The Siege of Remontel";
Constant Headline "^A Star Trek fan production^";
Release 1;
Include "Parser";
Replace PlayerTo;
Include "VerbLib";
[ PlayerTo newplace flag;
NoteDeparture();
move player to newplace;
move computer to newplace;
while (parent(newplace)) newplace = parent(newplace);
location = real_location = newplace;
MoveFloatingObjects(); AdjustLight(1);
switch (flag) {
0: <Look>;
1: NoteArrival(); ScoreArrival();
2: LookSub(1);
}
];
Include "Globals.inf";
Include "Classes.inf";
Include "Rooms.inf";
Include "Characters.inf";
Include "Items.inf";
[ Initialise ;
location = bunk;
player.description = "You are wearing an operations uniform,
with a single pip.";
move computer to bunk;
StartDaemon(red_alert);
];
Include "Grammar";
Include "MoreVerbs.inf";

56
script.fountain Normal file
View file

@ -0,0 +1,56 @@
Title: The Siege of Remontel
Source: A Star Trek fan production.
Author: Dan Jones
Notes:
Story for "The Siege of Remontel" text adventure game.
Contact: <danjones@goodevilgenius.org>
Draft date: 2022-01-23
===
INT. BUNK
The bunk is closed. It is dark. Our protagonist lies in her bed. A red alert klaxon is blaring, having woken her up.
PROTAGONIST (V.O.)
What in the world is that?
PROTAGONIST
Computer, lights.
The lights come up, and we see the bunk. It is small, just big enough to fit a single person with a little bit of wiggle room.
It is sparsely decorated. There is a single poster affixed to the ceiling of the bunk. The poster is a Starfleet recruitement poster.
Our protagonist keeps it in her bunk to remind herself of why she joined Starfleet.
Red Alert continues to blare.
The protagonist is dressed in the familiar operations uniform, and a single Ensign's pip.
PROTAGONIST
Computer, open my bunk
The bunk wall slides open, revealing a hallway which serves as the lower deck quarters. Bunks line the walls. A few other people are slowly waking up, and look confused.
The protagonist climbs out of her bunk. Hers is the second in a stack of three, so there is some space to step down.
As her feet step down, the alarm stops. A boatswain's call is briefly heard, followed by an announcement.
PIRATE LEADER (ON SPEAKER)
Attention crew of the USS Remontel. Your captain, bridge crew, and senior officers are in our custody. Your ship is under our control.
Anybody who attempts to oppose us will be met with a swift end. If you stay where you are and do not interfere in our plans, you will be released safely shortly.
The protagonist stands there, a bit dumbfounded. Why would someone capture this, of all ships? The Remontel is one of the most insignificant ships in the fleet.
She looks around and notices several other junior officers standing around, confused, scared, and unsure. Her friend, Ensign Christi Gomez, stands next to her.
PROTAGONIST
Christi, what are we going to do?
GOMEZ
I don't know. Should we try to contact Starfleet?
Ensign Ruux, a Rhaandarite, stands nearby. He is soft-spoken, and very tall. His wide forehead is a prominent feature.
RUUX
I don't think we should do anything. You heard him. All the senior officers have been taken. Whoever our captors are, they've already outsmarted the best of us. We should do what they say and hope they'll let us go.