kerbaledu · kerbaledu mission editor tutorial this lesson is intended as an introduction to the...

22
KerbalEdu Mission Editor Tutorial This lesson is intended as an introduction to the KerbalEdu Mission Library and Mission Editor, with the goal of learning to create a mission for classroom use. Objectives The KerbalEdu user will learn: How to use the Mission Library About the options in the Mission Editor, and about using HyperEdit How to plan, publish and document user missions Timeline: The KerbalEdu user can learn the basics in one hour. An afternoon should be set aside for making an actually playable mission. Materials: KerbalEdu installed on the user’s computer An account for the Mission Library, included in every KerbalEdu purchase This guide Grouping: Grouping can be used with this lesson. Anyone from students to teachers can be taught to plan and build missions. To keep the Mission Library stocked with good-quality missions, every mission should be tested before publishing!

Upload: truongdan

Post on 20-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

KerbalEdu

Mission Editor Tutorial

This lesson is intended as an introduction to the KerbalEdu Mission Library and

Mission Editor, with the goal of learning to create a mission for classroom use.

Objectives

The KerbalEdu user will learn:

● How to use the Mission Library

● About the options in the Mission Editor, and about using HyperEdit

● How to plan, publish and document user missions

Timeline: The KerbalEdu user can learn the basics in one hour. An afternoon should be set aside for

making an actually playable mission.

Materials:

● KerbalEdu installed on the user’s computer

● An account for the Mission Library, included in every KerbalEdu purchase

● This guide

Grouping: Grouping can be used with this lesson. Anyone from students to teachers can be taught to

plan and build missions. To keep the Mission Library stocked with good-quality missions, every mission

should be tested before publishing!

Execution

The lesson is planned as a self-study session with several optional topics. The learning activities start

with orientation and a guide for how to log in to the KerbalEdu Mission Library. Next, editing the

mission and events is discussed in detail, with less focus on mission options and contracts. The

lesson gives hints about the limits of the editor and explains how to import save files from

KerbalEdu. Additionally, the lesson gives guidelines for how to use the HyperEdit mod with KerbalEdu.

Publishing the mission is described last. Finally, the ‘Lesson challenge’ goal is to create and publish a

practice mission in the KerbalEdu Mission Library.

Learning Activities

Orientation

The Mission Editor requires a fair understanding of working with KerbalEdu. What it does not

require is any understanding of actual mission files or previous modding experience. The user

does not need any mods, but they are supported by the Mission Editor. In particular, we

recommend a mod called HyperEdit, which allows users to set up missions before uploading

them to the Editor.

Saving

Mission files can be imported into the Editor, allowing fast changes and modifications, such as

making a mission out of a student’s saved game and picking up where they left off in the next

lesson. The KerbalEdu Mission Editor’s benefits include the event system, easy access to data in

the mission file, as well as rapid publishing and access through the Library. Starting a game at a

preset point is great for conserving time in the classroom!

KerbalEdu Mission Library

The KerbalEdu Mission Library can be accessed through kerbaledu.com/kerbalmissionlibrary.

The login credentials are identical to those used when downloading KerbalEdu from

kerbalspaceprogram.com.

My profile

You can change your Mission Library screen name (public) in My profile. You can also find all

missions you have published listed in here.

Mission Library

Figure: Browsing doesn’t require login.

In the Mission Library, users can search for missions, rate them and browse available content.

The missions are accessed by clicking their names.

Mission page

Figure: Mission view.

The mission page offers all the information that the creator provided when they published the

mission. If the mission is yours and you have logged in, you can edit it on the fly. The main

options here are ‘additional materials ‘, which includes lesson plans, and the ‘Launch in

KerbalEdu ’ button, which does not require login. The launch button will attempt to tell your

operating system to launch KerbalEdu with this mission.

Mission editor

When launching the Mission Editor, you are greeted with the ‘Nothing to edit’ message and

a few options. ‘New’ gives you a few options from which to start, ‘Open’ opens a saved

Mission, and ‘Save’ saves the mission but does not publish it. ‘Import’ can be used to start

working with an .sfs file saved from the game. (Note: Even .sfs files from the commercial Kerbal

Space Program and its demo are accepted, if they are made using the version of KSP the current

KerbalEdu is based on. )

Example: Pressing F5 during a mission saves quicksave.sfs to KerbalEdu/saves/yourgamename/,

and this can be imported into the Editor. The ‘Export’ option saves mission as an .sfs file and

’Playtest’ launches KerbalEdu if the game installed on the computer.

‘New’ mission allows you to take your pick from a few vessels and set them up on land or in

orbit pretty much anywhere in the Kerbol System. Vessels are in circular orbit by default. This

option is not very advanced, but it works well as practice for mission making.

Mission editing: Vessels

Figure: An example of position data.

The mission editing screen allows you to set up the public title for the mission, as well as a

short description that can be seen in-game. The vessels tab includes ships, space junk and

asteroids. Fiddling with the position data numbers results in changes to the orbit (check with

the ‘Playtest’ button) and is actually a great learning experience! With the tick boxes, one can

enable some of the craft functions, such as brakes or the Stability Assist System.

From our example, we can see the following information (for more in-depth explanations,

please take a look at the Kerbal Space Program Wiki ). 1

From position data we can see that:

● Aeris 3A is orbiting Kerbin (you could have it orbit a different body by selecting from

the dropdown).

● Both eccentricity and inclination are 0, so the orbit is perfectly round and at the

equator.

● Since the orbit is circular, the semi-major axis is the same as the radius, and puts the

vessel on a 100 km orbit.

● The argument of periapsis indicates which phase of the orbit the vessel is in.

● The longitude of ascending node is the point where the orbit starts to curve back

North.

● The epoch serves as a reference point when measuring time.

1 http://wiki.kerbalspaceprogram.com/wiki/Orbit

● The mean anomaly at epoch is the angle that dictates how long it takes for a vessel to

get to the highest point of the orbit. Currently the Aeris is on a circular orbit, so the

angle is 0.

Parts

Hosted in the parts category is raw data from the save file about the vessel. You

can open up the parts with the down arrow and see what is inside. It is generally

advisable not to edit values unless you know what you are doing! While easier tasks

like filling the fuel tanks work pretty well (part / RESOURCE / amount and maxamount ),

some changes such as renaming command module crew members can cause the

game to crash when loading the mission.

Mission editing: Events

The event tab reveals the KerbalEdu event system. While KerbalEdu does not offer a scripting

language, the event system is robust enough to achieve simple condition/action branching with

a selection of functions. You can add events with the ‘add event’ button.

In our example, we added an event called ‘Return to KSC ’. The event fires up when (the player)

arrives at the scene of the Kerbal Space Center. We could add extra conditions for this event,

such as requiring a button push, or make it repeatable. By default, events fire up only once.

In the ‘Do’ part, we specify what happens by selecting the ‘Show message window’. The

message window has a title, a picture (.png or .jpg in the mission folder ), a message and some

buttons. We can add more than one action. After we test the mission and press Esc to return to

KSC, we are greeted like this:

If you are unsure of how mission events work, please import one of the TeacherGaming

missions, such as the Earth History Campaign , into the Editor and inspect how the events are

made!

One thing you want to be aware of is whether the event should be ‘repeatable’, meaning it will

always fires up when the conditions are met. In the classroom, it could be useful that students

can try missions again without restarting the whole game, so a mission restart (Add action -

Revert to launch) should be created in the event editor. Because of the repeatable nature of

the mission, all of its important events should be able to fire up more than once, so tick the

‘repeat’ box on the top right of the event box.

Note: Also worth mentioning is that while buttons have labels and names

in plain text, special characters (like ‘!’) might cause problems, so avoid using them.

Mission editing: Contracts

Contracts are part of the Kerbal Space Program ‘Career’ game mode and they can be edited

here. Using contracts is limited to imported save games from the ‘Career’ game mode. At this

point, career editing is possible but difficult. Hardcoded contracts can cause some problems.

Figure: Contract information.

Mission editing: Mission Options

General information specifies what kind of mission you are dealing with, where the player

starts, and whether they have an active vessel. You can also enable & disable mission-specific

plugins (ex. Scenario modules). The plugin enabled here is the Edu Event System, which

manages the events. Generally speaking, you should not make changes to these, unless you

know what you are doing. Universal time is based on seconds after the game starts, and it

affects planetary rotations. However, rewinding your vessel’s orbit by editing UT is not possible.

“Copy directory to installation” is for complex missions that use mods or other data in addition

to the .sfs file, or comprise of multiple .sfs files.

Limits of the Mission Editor

Crew names

Changing a crew member’s name in the command module causes a crash, because the

crew member is no longer mentioned in the mission file list of Kerbals. Editing the list of

Kerbals is not supported at this point (Mar 2016) by the Mission Editor.

Full-fledged programming

The KerbalEdu event system is not a fully fledged programming or scripting system. (One

should turn to for C# and Kerbal Plugins for that.)

Docked ships breaking things

The events will not fire if the ship name is changed. For more details, see the lesson challenge

below.

Importing .sfs save files from the game

Following screenshot is from a save used in the TeacherGaming mission ‘Out of Fuel’. The game has

spawned asteroids and there is some debris from the player ship. You can clear these away with the

‘delete’ button if needed, or change their orbital position to suit your needs.

One of the most effective ways to build a mission is to first pre-plan it, build vessels, and place them in

the game. You can even use a vanilla Kerbal Space Program save if it is made in the same version

KerbalEdu is based on. The save file is an .sfs file that can be found under KerbalEdu/saves/your game

name/ . There are likely to be two .sfs files in the folder: Persistent.sfs and quicksave.sfs . The persistent

file is the status of your game when you exit it, and quicksave is something you saved by pressing ‘F5’

on the keyboard. We suggest that you set up the scenario in the game, and save it at the correct time

with ‘F5’. After that, it is just a matter of uploading the save file with Mission Editor / ‘Import’.

Using a third party mod: HyperEdit

Although not necessarily required for mission editing, HyperEdit is a useful modification for

that purpose. It is published under GNU General Public License by Kerbaltek.

Download an older version, since KerbalEdu is not always up to date with the newest Kerbal

Space Program. In November 2016, the correct file was “HyperEdit_1.5.2.1_for_Kerbal_1.1.3 ”.

After downloading the package, unzip it to the KerbalEdu folder. After this you are all set.

Figure: The version number is visible on the bottom right of the main menu.

During the game you can see a ‘H‘ icon on the top right corner of the screen. HyperEdit is a tool

that lets you change orbits quickly (even those of planets), teleport ships and adjust resources

on the fly. Additionally, it can be used to open the Kerbal cheat menu, normally accessed

through Alt-F12 (PC). Using HyperEdit will make educational mission planning much easier by

letting you build ships and directly teleport them from the launchpad to orbit. When you are

done, simply press ‘F5’ and import the quicksave.sfs to Mission Editor.

Publishing the mission

Figure: Mission information is an important document to many

KerbalEdu users.

When you consider a mission ready and feel you have playtested it enough, you might want to share

it with the KerbalEdu users. Fill out the Publish Mission page:

● Basic mission information includes the mission’s description and a short title, credits and its

subject.

● The summary is show in the Mission Library, so it is a good place to describe the mission’s core

idea.

● The mission type, start condition, your thoughts on grouping and the lesson plan tab are used

in the Library’s search engine. The age levels refer to school curricula.

● The description can be used to give overall information or guidelines, unless you are including

a lesson plan for the project. Even so, the description could give a brief summary of the

mission.

● If you are aiming for class work, please take some time to think about what learning standards

might apply. Example: Some useful standards can be found on the NGSS homepage .

● The mission file can be selected from your own mission list (missions saved in the Mission

Editor) or uploaded directly (.sfs or .zip).

● Mark down the version of KerbalEdu you were using. When a new version of KerbalEdu comes

out, please make sure your missions work with the new version and update them if they do.

● Lesson plans, guides, or study material can be uploaded in “Additional material” when you save

the mission. PDF files work best.

● Screenshots will give lessons a finished look. The version number is for bookkeeping.

● Remember to write down mod data if you have used mods while building the mission file.

(Note: If you are using the flight assistant autopilot ‘MechJeb’, this should definitely be noted, because

it imports new parts to the game. However, if you have used HyperEdit when making the mission, it

does not need to be mentioned here because it does not interfere with the game itself. )

● Hosted study material can be introduced through the ‘Relevant links’ category, while a

walkthrough can be uploaded to your Youtube or Vimeo account and then linked to the

mission.

Finally, read through the Terms of Use. If you agree with them, you can check the box and press “Save

& Publish ”. The mission should appear in the public library of missions.

Teacher challenge #1: KerbalEdu event basics

Setting up: Ensure you can log in to Mission Editor and have the latest KerbalEdu installed.

Scenario: This lesson challenge involves trying out the KerbalEdu event system through

playtesting.

Goal: Learn to use the KerbalEdu event system.

The challenge involves:

a) Using mission presets.

b) Setting up events that respond to player input.

c) Using the ‘Playtest’ option for testing your mission.

First log in to the Mission Library and click on ‘Mission Editor.’

Select New (mission) and pick the ‘Kerbal X’ vessel. Set the situation as ‘Launch’ and launch from

‘Launchpad’. Click ‘Create’. Next, you can see the title ‘Kerbal X on Launchpad’. Press Save and then

Playtest. If KerbalEdu is installed on your computer, it should be launched. Some operating systems

give a security warning, asking whether you want to start a command from ‘startfromurl.cmd ’ - click on

‘yes’.

KerbalEdu will load up with your scenario. You can see the rocket on the launch pad. Before launching,

we want to set up the game to notify us when the rocket is past 1000 m and 5000 m. Press ‘Esc’ and

select ‘Space Center’’. Exit the program and return to the Mission Editor.

What you need to do next is set up a queue of events in the Events tab. There will not be any events to

start with, so click on the ‘Add event’ button.

● Name the first event “1000 m flight”.

● When: Change the condition from the dropdown menu (Default ‘Action Group State’ ) to

‘Altitude ’. Vessel: ‘-Active Vessel-’ . Type ‘1000’ in the Altitude box. Change ‘Comparison’ to ‘Above ’.

● Do: Select ‘Show message window’ from the dropdown menu. Set the title to “Congratulations ”.

Message: “You have made it to 1000 m altitude! ”

Create a second, similar event for 5000 m. Again, make a message appear when the active ship hits

5000 m altitude.

The third event will be a little different. At 10000 m, create an event that reverts the mission back to

the launchpad. When “Altitude” is 10000. Do “Revert back to launch”.

Playtest the mission: Does it work like it should? Is the altitude event popping up too early? Did you

use a ‘Below ’ comparison instead of ‘Above ’?

Play around with the Mission Editor while moving the vessel to orbit other planets, and see what else

you can do.

Teacher challenge #2: Kerbals falling down

Setting up: Ensure you can log in to Mission Editor and have the latest KerbalEdu installed.

Scenario: This lesson challenge involves making a simple mission that involves modifying

orbital information.

Goal: Learn to modify orbital information.

The challenge involves:

a) Using mission presets

b) Setting up required orbital information and events.

c) Using the ‘Playtest’ option for testing your mission.

First, create a new mission. Select the vessel ‘Aeris 3A ’. Situation: ‘Orbit ’ and Body: ‘Kerbin ’. Height ‘100

km ’.

In the events tab, add an event. Set it to launch when the altitude is below 70000. Have a ‘Message

window’ trigger, warning the player that the spacecraft is entering atmosphere at a high speed.

Check the ‘Vessels’ tab. There, you can find the orbital information of the Aeris. On this occasion, you

want a crash course, so you should set Eccentricity -0.10. Doing so will cause the spaceplane to dip

into Kerbin’s atmosphere. The ‘Mean anomaly’ is responsible for the current phase of the orbit (ranging

from 0 to PI) - type in ‘2’. This should position the spaceplane right at the outer boundaries of the

atmosphere.

Playtest the mission. If the game starts with a black screen, your ship blew up immediately at the start,

and you need to change the orbital information. You should play around with orbital information

around other planets in order to see how position data changes the craft orientation.

This scenario is tricky, but not impossible, to solve. If you want to make it more challenging (a true

unpowered landing), you can open the parts menu and find “MK1IntakeFuselage ”. Under the fuselage,

select the bottom resource tab and change the amount of LiquidFuel to 0. After the change, you can

congratulate yourself, because you have just successfully modified Kerbal parts!

Teacher challenge #3: My Asteroid Redirect Mission

Setting up: Ensure you can log in to Mission Editor and have the latest KerbalEdu installed.

Scenario: This lesson challenge involves building and publishing a mission in the KerbalEdu

Mission Library. You have probably seen films where an asteroid destroys the Earth. Well, this

time you are the director! Make an “asteroid redirection” mission where players try to change

the orbit of the asteroid.

Goal: Learn to create material for your own class, and get first-hand experience of publishing a

mission.

The challenge involves:

a) Setting up the scene (ship to orbit) and making a save file in KerbalEdu.

b) Importing the save to the Mission Editor.

c) Adjusting orbital information of an asteroid to a more suitable one for the classroom

mission.

d) Setting up events for the failure/success of the mission.

e) Publishing the mission in the Mission Library under the name of “Mission Editor

training: Asteroid mission ” or something similar.

First, build the vessel you are going to use with the mission, or use the craft we supply the example

mission with. The vessel should have a grabbing hook to be able to attach to the rock. (We are planning

to push the asteroid away from its orbit, but if you’d like to send Bruce Kerman himself to attach

nuclear devices on the rock, go ahead.) Then move the ship to orbit, either by flying it there or using

HyperEdit. Save the game with ‘F5’. Import the quicksave.sfs to the Mission Editor.

In the picture above, you can see list including two spacecraft and a bundle of asteroids. The next step

is very straightforward: copy your orbit information from your ship over to the first asteroid, and then

move your ship back on the orbit so it won’t collide with the asteroid right away. Rename the mission.

(In the picture: ‘default2 SANDBOX’. )

For our example mission, we put ‘Rokship ’ on a collision trajectory with Kerbin, and replaced Ast.

HSJ-227’s position information with information from Rokship . Since being in the same position

results in an explosion, we’ll need to tweak the position of the asteroid. Changing the epoch by -0.0001

should move the rock a few kilometers away, depending on the actual orbit. Remember to change the

asteroid’s Body (of influence) to ‘Kerbin’, since ‘Kerbol’ is the sun.

In our example mission, we have a ship with drilling equipment and an ISRU that lets us convert huge

amounts of fuel from the asteroid. First, dock to the correct side of the asteroid, and second, use your

engines to lift the periapsis of the asteroid above the atmosphere. The mission fails if the asteroid

reaches the upper atmosphere. Keep thrust low, so the asteroid doesn’t start spinning!

Note: Docked ships event anomaly

The example mission was easy to set up, but a bit harder to make event-rich, due to the

inherited feature of docked crafts changing their names. Kerbal does not have immutable

‘global names’ for ships, so docked ships are considered a new craft with a new name. In the

asteroid mission, you can see how events break down when a new ship named ‘X’ cannot

communicate with an event tailored for a ship named ‘Y’. Although we cannot actually change

how the program is written, we can attempt some workarounds:

a) Use the ‘Active vessel’ (player controlled) in the events. The example mission will fail if

active vessel has its periapsis and altitude below 80 km.

b) Check that the vessel name returns back to the original after undocking.

In the class, you can tell students that renaming vessels will break the game! As for the

event system, in the classroom the teacher can validate mission success even if the game

does not. For example: We do not have the means to check if a cabbage was brought onto

Duna. In summary, it should be noted that events work well with one ship, and with simple,

well-defined goals using one ‘Active vessel’ .

If you do not want to go the trouble of creating a new mission from scratch, you can

always download and import the example mission into the Mission Editor. We include the

‘Rokship’ craft file in the mission materials, so you can use it for your own missions by copying

it to KerbalEdu/Ships/VAB . The ship does not have fuel problems, since it can drill up ore and

make propellants with the ISRU.

Reflection

● What you would want to teach with KerbalEdu? What could you teach with the Mission Editor?

● Which STEM topics are suitable for the asteroid mission? Gravity and mass? Acceleration?

● How would you or your students improve the design of the asteroid ship to prevent the

asteroid from rolling around?

● Fiction vs. scientific reality. If you use the asteroid mission in the classroom, you could have a

discussion about movies in which an asteroid threat is eliminated in an unrealistic manner.

Assessment

After you are done with your mission, you can gauge how well it fits into the curriculum. How does it

challenge the problem-solving capabilities of the students? What concepts will you need to teach them

to unlock the game’s full learning potential? For example, pushing the asteroid away is a clear

demonstration of Newton’s Third Law!

Mission editing enables you to start right from the problem without the need to spend time on

preparation in class. Focusing on the learning process is always good idea. While building our example

mission, we ended up iterating and moving the starting point from a 5 km distance to 500 meters from

the asteroid. This simple change eliminated at least ten minutes of idle waiting time while the craft

approached the asteroid. Additionally, students can observe their craft’s momentum visually with the

asteroid serving as a reference point.

Publishing the mission is the last task. Some teachers may not be comfortable with the idea of

distributing the mission to the entire KerbalEdu audience. However, exposing yourself to criticism a

part of becoming a better mission designer, and it is the best way to get your students to play missions

you created, since published missions can be launched anywhere without logging in.

Standards Alignment

Teacher standards 2

1. Set high expectations which inspire, motivate and challenge pupils

2. Promote good progress and outcomes by pupils

3. Demonstrate good subject and curriculum knowledge

4. Plan and teach well structured lessons

5. Adapt teaching to respond to the strengths and needs of all pupils

6. Make accurate and productive use of assessment

7. Manage behaviour effectively to ensure a good and safe learning environment

8. Fulfil wider professional responsibilities

Next Generation Science Standards: Practices For K-12 Science Classrooms 3

1. Asking questions (for science) and defining problems (for engineering)

2. Developing and using models

3. Planning and carrying out investigations

4. Analyzing and interpreting data

5. Using mathematics and computational thinking

6. Constructing explanations (for science) and designing solutions (for engineering)

7. Engaging in argument from evidence

8. Obtaining, evaluating, and communicating information

2 Teachers’ Standards Guidance for school leaders, school staff and governing bodies. July 2011. UK 3 Science and Engineering partices in NGSS/A Framework for K-12 Science Education