combining levels

  • 9 Replies
  • 3934 Views
combining levels
« on: December 18, 2009, 01:43:41 »
ok so we are workingn on a game as a team but we are not sure how to go about combining our screens together into one game. We are each working on multiple screens which are saved to different files. Is there any way to combine all of our workings into one knytt level ? John Barbee

*

Offline Exp HP

  • 259
  • 2
  • 1 in 166 children
    • View Profile
Re: combining levels
« Reply #1 on: December 18, 2009, 04:43:09 »
It's tedious: You can copy and paste screens between levels, but you have to do it one at a time.  Pick the level with the most rooms and add the rooms from the other levels to it.  It certainly helps to have two Editors open (one on the level you're copying from, and one on the level you're copying to), because otherwise you have to keep resetting the editor to switch between levels.

If you use any custom tilesets and such, or if you've made any cutscenes, etc, you'll also have to copy those to the new level.  You can find the files for that stuff in the level's folder; just copy over any folders in it that have stuff you made.
Also, if you set up any warps/shifts/signs in any levels, you'll need to copy and paste the code for that stuff to the complete level as well, and fix it up to work with the new screen coordinates.  That sort of stuff is pretty technical, so I'm not sure if any of you used it, but if you did and need help finding/copying/fixing it, just ask.
« Last Edit: December 18, 2009, 04:49:31 by Exp HP »
(secretly hoping nobody will mention the object compendium)
My stars:   :hiddenstar:(Object Compendium):hiddenstar:(By PM)
Check out my Youtube channel for some terrible Let's Plays by a socially inept nerd!

*

Offline Salmoneous

  • 1001
  • 25
    • View Profile
Re: combining levels
« Reply #2 on: December 18, 2009, 08:47:41 »
I just got an idea. Blox could make in ks advanced that you can copy and paste entire levels or areas. Blox are you there?

*

Offline AA

  • 510
  • 23
  • Was ITA84
    • View Profile
    • Insight on Videogames
Re: combining levels
« Reply #3 on: December 18, 2009, 09:33:51 »
If you don't mind using a hex editor, you can do it: just uncompress the Map.bin files merge them, taking care of eventual duplicate rooms, and finally compress the resulting file in GZip. If there are no duplicate rooms, I think you could also just concatenate the two uncompressed files with 'copy /b'.
Videogames are for everyone, by everyone

*

Offline Razzorman

  • 965
  • 4
  • Contemplating name change.
    • View Profile
Re: combining levels
« Reply #4 on: December 18, 2009, 11:04:59 »
I just got an idea. Blox could make in ks advanced that you can copy and paste entire levels or areas. Blox are you there?
KSA is a game mod, not an editor mod (Or is it? I don't know :P Either way, blox isn't the only one who can mod KS). Why don't you ask looki, since he actually made some improvements to the editor already, or better yet, do it yourself?
« Last Edit: December 18, 2009, 11:07:21 by Razzorman »
My only star: :hiddenstar:

 :D

*

Offline minmay

  • 654
  • 8
    • View Profile
    • Cow Muffins
Re: combining levels
« Reply #5 on: December 18, 2009, 14:14:47 »
Doesn't the level composer already allow multiple screen copying/pasting?

*

Offline Razzorman

  • 965
  • 4
  • Contemplating name change.
    • View Profile
Re: combining levels
« Reply #6 on: December 18, 2009, 14:35:41 »
Doesn't the level composer already allow multiple screen copying/pasting?
I'm not sure if it can do it between different level levels, but yeah, it does.
My only star: :hiddenstar:

 :D

*

Offline DustinCartwright

  • 40
  • 0
  • Independant Game Designer and Life-Long Gamer
    • View Profile
    • MobyGames Profile
Re: combining levels
« Reply #7 on: December 18, 2009, 15:01:10 »
Haha John, Game101 with Daniel Young? yeah

Re: combining levels
« Reply #8 on: December 20, 2009, 08:27:07 »
Hmm well thanks for all the info, we do have shifts and custom tiles so i will try the copy and paste between the two open editors to see if that works. I'm not sure how to go about those other programs you all are talking about. sup Dustin

*

Offline Exp HP

  • 259
  • 2
  • 1 in 166 children
    • View Profile
Re: combining levels
« Reply #9 on: December 20, 2009, 09:18:47 »
Alright, to copy over Shifts, Warps, and Signs and fix them for the new room locations, do the following:

Make sure you've copied all the rooms first, then open World.ini.

Any room that has a Shift, Warp, or Sign will have have its coordinates appear in World.ini in brackets as a section header.  So copy one such line and all lines that follow it.
EXAMPLE
[x1004y1009]
Sign(a)=You're chicken.
Sign(B)=No, you're the chicken.
ShiftYMap(A)=2
ShiftType(A)=3
ShiftQuantize(A)=False
ShiftVisible(A)=False
ShiftEffect(A)=False
ShiftSound(A)=Switch
ShiftType(C)=2
ShiftXPos(C)=5
ShiftXMap(C)=1006
ShiftYMap(C)=996
ShiftTouch(C)=True
ShiftAbsoluteTarget(C)=True


You would copy and paste the code into the big level's world.ini. Then you would find the original x1004y1009 the editor, take a good look at it, and then look for where you put that very same screen in the new level. In World.ini for the new level, you would then change the coordinates in the brackets accordingly so that they point to the correct screen.

Note that if a Shift has the ShiftAbsoluteTarget=True flag, then you have to do the same procedure listed above to find the correct numbers for ShiftXMap and ShiftYMap. So for this example I would also have to find out the new coordinates of x1006y996, because Shift C does have AbsoluteTarget enabled..

FINISHED EXAMPLE IN NEW LEVEL
[x994y980]
Sign(a)=You're chicken.
Sign(B)=No, you're the chicken.
ShiftYMap(A)=2
ShiftType(A)=3
ShiftQuantize(A)=False
ShiftVisible(A)=False
ShiftEffect(A)=False
ShiftSound(A)=Switch
ShiftType(C)=2
ShiftXPos(C)=5
ShiftXMap(C)=996
ShiftYMap(C)=967
ShiftTouch(C)=True
ShiftAbsoluteTarget(C)=True
(!!!)
« Last Edit: December 20, 2009, 09:28:24 by Exp HP »
(secretly hoping nobody will mention the object compendium)
My stars:   :hiddenstar:(Object Compendium):hiddenstar:(By PM)
Check out my Youtube channel for some terrible Let's Plays by a socially inept nerd!