What do we not want?

Organized and clear discussion only. Be sure to read sub-forum descriptions.
Forum rules
- All off-topic posts will be removed without notice.
- Poorly written topics/posts will be edited without warning
- Unnecessary topics will be deleted or locked without warning.
- Posts may be moved without warning.
Prototype
Developer
Posts:2968
Joined:Fri Dec 07, 2012 1:25 am
Affiliation:NSCD
IGN:Currently:Small_Bear
Location:Yes
Re: What do we not want?

Post by Prototype » Sat Apr 06, 2013 11:04 am

I say we get space flight and inter sever travel sorted out, maybe the fighter system, them we can add more content in.

As for fighter, the final thing would be one whole entity, the different "modules" can just be various shapes, or sets of shapes, and the final thing can be one entity, Flans already uses a system where the wings and flaps and everything are all made separately, but the full code is one entity, if that makes any sense I don't really know if those are the correct terms, but if you look at the source code for his planes, you'll see how each part of the plane is categorised, I'd post an example here if I was at my PC, I may have to edit an example in here:
Spoiler:
OK this is how the A-144 model was coded:
//This File was created by Prototype
// This file is for Flan's Flying Mod Version 1.5.1

// Model Checklist
// Model:
// - Hitbox [ ]
// - Check Left/Right [ ] Left = + / Right = -
// - Code Cleaned [ ]
// - Coverted to Version [1.5.1]

package co.uk.flansmods.client.model;

import co.uk.flansmods.client.tmt.ModelRendererTurbo;
import co.uk.flansmods.client.tmt.Coord2D;
import co.uk.flansmods.client.tmt.Shape2D;

public class ModelA144 extends ModelPlane
{
int textureX = 512;
int textureY = 512;


boolean VarGear = true;
boolean VarDoor = true;
boolean VarWing = true;

public ModelA144()
{



bodyModel = new ModelRendererTurbo[22];
bodyModel[0] = new ModelRendererTurbo(this, 0, 0, textureX, textureY);
bodyModel[1] = new ModelRendererTurbo(this, 160, 0, textureX, textureY);
bodyModel[2] = new ModelRendererTurbo(this, 0, 100, textureX, textureY);
bodyModel[3] = new ModelRendererTurbo(this, 0, 150, textureX, textureY);
bodyModel[4] = new ModelRendererTurbo(this, 0, 200, textureX, textureY);
bodyModel[5] = new ModelRendererTurbo(this, 0, 260, textureX, textureY);
bodyModel[6] = new ModelRendererTurbo(this, 0, 290, textureX, textureY);
bodyModel[7] = new ModelRendererTurbo(this, 0, 320, textureX, textureY);
bodyModel[8] = new ModelRendererTurbo(this, 0, 360, textureX, textureY);
bodyModel[9] = new ModelRendererTurbo(this, 0, 415, textureX, textureY);
bodyModel[10] = new ModelRendererTurbo(this, 0, 440, textureX, textureY);
bodyModel[11] = new ModelRendererTurbo(this, 0, 290, textureX, textureY);
bodyModel[12] = new ModelRendererTurbo(this, 0, 470, textureX, textureY);
bodyModel[13] = new ModelRendererTurbo(this, 170, 100, textureX, textureY);
bodyModel[14] = new ModelRendererTurbo(this, 170, 155, textureX, textureY);
bodyModel[15] = new ModelRendererTurbo(this, 170, 180, textureX, textureY);
bodyModel[16] = new ModelRendererTurbo(this, 170, 190, textureX, textureY);
bodyModel[17] = new ModelRendererTurbo(this, 170, 190, textureX, textureY);
bodyModel[18] = new ModelRendererTurbo(this, 170, 290, textureX, textureY);
bodyModel[19] = new ModelRendererTurbo(this, 170, 230, textureX, textureY);
bodyModel[20] = new ModelRendererTurbo(this, 170, 360, textureX, textureY);
bodyModel[21] = new ModelRendererTurbo(this, 170, 360, textureX, textureY);





bodyModel[0].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(60, 0, 60, 0), new Coord2D(65, 10, 65, 10), new Coord2D(0, 10, 0, 10), new Coord2D(5, 3, 5, 3), new Coord2D(10, 2, 10, 2), new Coord2D(20, 0, 20, 0) } ), 20, 65, 10, 143, 20, ModelRendererTurbo.MR_FRONT, new float[] {40, 11, 6, 9, 65, 12});
bodyModel[0].rotateAngleX = 3.14159263F;
bodyModel[0].rotateAngleZ = 3.14159263F;
bodyModel[0].setRotationPoint(-50F, 0F, -10F);

bodyModel[1].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(70, 0, 70, 0), new Coord2D(70, 2, 70, 2), new Coord2D(0, 2, 0, 2) } ), 22, 70, 2, 144, 22, ModelRendererTurbo.MR_FRONT, new float[] {2, 70, 2, 70});
bodyModel[1].rotateAngleX = 3.14159263F;
bodyModel[1].rotateAngleZ = 3.14159263F;
bodyModel[1].setRotationPoint(-50F, -10F, -11F);

bodyModel[2].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(65, 0, 65, 0), new Coord2D(70, 13, 70, 13), new Coord2D(30, 11, 30, 11), new Coord2D(20, 9, 20, 9), new Coord2D(10, 7, 10, 7), new Coord2D(5, 5, 5, 5) } ), 20, 70, 13, 156, 20, ModelRendererTurbo.MR_FRONT, new float[] {8, 6, 11, 11, 41, 14, 65});
bodyModel[2].rotateAngleX = 3.14159263F;
bodyModel[2].rotateAngleZ = 3.14159263F;
bodyModel[2].setRotationPoint(-50F, -12F, -10F);

bodyModel[3].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(10, 25, 10, 25), new Coord2D(0, 0, 0, 0), new Coord2D(40, 0, 40, 0), new Coord2D(40, 23, 40, 23) } ), 20, 40, 25, 121, 20, ModelRendererTurbo.MR_FRONT, new float[] {31, 23, 40, 27});
bodyModel[3].rotateAngleX = 3.14159263F;
bodyModel[3].rotateAngleZ = 3.14159263F;
bodyModel[3].setRotationPoint(10F, 0F, -10F);

bodyModel[4].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 28, 0, 28), new Coord2D(0, 5, 0, 5), new Coord2D(15, 5, 15, 5), new Coord2D(20, 0, 20, 0), new Coord2D(30, 0, 30, 0), new Coord2D(35, 5, 35, 5), new Coord2D(40, 5, 40, 5), new Coord2D(40, 28, 40, 28), new Coord2D(30, 33, 30, 33), new Coord2D(20, 33, 20, 33) } ), 26, 40, 33, 114, 26, ModelRendererTurbo.MR_FRONT, new float[] {0, 10, 12, 23, 5, 8, 10, 8, 15, 23});
bodyModel[4].rotateAngleX = 3.14159263F;
bodyModel[4].rotateAngleZ = 3.14159263F;
bodyModel[4].setRotationPoint(50F, 5F, -13F);

bodyModel[5].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 9, 0, 9), new Coord2D(2, 4, 2, 4), new Coord2D(15, 0, 15, 0), new Coord2D(50, 0, 50, 0), new Coord2D(45, 4, 45, 4), new Coord2D(45, 9, 45, 9), new Coord2D(0, 9, 0, 9) } ), 20, 50, 9, 112, 20, ModelRendererTurbo.MR_FRONT, new float[] {0, 45, 5, 7, 35, 14, 6});
bodyModel[5].rotateAngleX = 3.14159263F;
bodyModel[5].rotateAngleZ = 3.14159263F;
bodyModel[5].setRotationPoint(20F, 0F, -30F);

bodyModel[6].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 20, 0, 20), new Coord2D(15, 10, 15, 10), new Coord2D(25, 0, 25, 0), new Coord2D(50, 0, 50, 0), new Coord2D(50, 20, 50, 20) } ), 5, 50, 20, 129, 5, ModelRendererTurbo.MR_FRONT, new float[] {50, 20, 25, 15, 19});
bodyModel[6].rotateAngleX = 4.71238894F;
bodyModel[6].rotateAngleZ = 3.14159263F;
bodyModel[6].setRotationPoint(15F, -13F, -30F);

bodyModel[7].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(45, 0, 45, 0), new Coord2D(46, 1, 46, 1), new Coord2D(47, 3, 47, 3), new Coord2D(49, 5, 49, 5), new Coord2D(50, 10, 50, 10), new Coord2D(45, 15, 45, 15), new Coord2D(20, 10, 20, 10), new Coord2D(5, 5, 5, 5) } ), 20, 50, 18, 120, 20, ModelRendererTurbo.MR_FRONT, new float[] {8, 16, 27, 10, 6, 3, 3, 2, 45});
bodyModel[7].rotateAngleZ = 3.14159263F;
bodyModel[7].rotateAngleX = 3.14159263F;
bodyModel[7].setRotationPoint(20F, -13F, -30F);

bodyModel[8].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(20, 0, 20, 0), new Coord2D(30, 6, 30, 6), new Coord2D(30, 20, 30, 20), new Coord2D(20, 26, 20, 26), new Coord2D(6, 26, 6, 26), new Coord2D(0, 20, 0, 20), new Coord2D(0, 6, 0, 6) } ), 25, 30, 26, 98, 25, ModelRendererTurbo.MR_FRONT, new float[] {9, 14, 9, 14, 12, 14, 12, 14});
bodyModel[8].rotateAngleX = 3.14159263F;
bodyModel[8].rotateAngleZ = 3.14159263F;
bodyModel[8].setRotationPoint(70F, 0F, -34F);

bodyModel[9].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(14, 0, 14, 0), new Coord2D(20, 6, 20, 6), new Coord2D(20, 14, 20, 14), new Coord2D(14, 20, 14, 20), new Coord2D(6, 20, 6, 20), new Coord2D(0, 14, 0, 14), new Coord2D(0, 6, 0, 6) } ), 2, 20, 20, 68, 2, ModelRendererTurbo.MR_FRONT, new float[] {9, 8, 9, 8, 9, 8, 9, 8});
bodyModel[9].rotateAngleX = 3.14159263F;
bodyModel[9].rotateAngleZ = 3.14159263F;
bodyModel[9].setRotationPoint(75F, -2F, -36F);

bodyModel[10].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 9, 0, 9), new Coord2D(2, 4, 2, 4), new Coord2D(15, 0, 15, 0), new Coord2D(50, 0, 50, 0), new Coord2D(45, 4, 45, 4), new Coord2D(45, 9, 45, 9), new Coord2D(0, 9, 0, 9) } ), 20, 50, 9, 112, 20, ModelRendererTurbo.MR_FRONT, new float[] {0, 45, 5, 7, 35, 14, 6});
bodyModel[10].rotateAngleX = 3.14159263F;
bodyModel[10].rotateAngleZ = 3.14159263F;
bodyModel[10].setRotationPoint(20F, 0F, 10F);

bodyModel[11].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 20, 0, 20), new Coord2D(15, 10, 15, 10), new Coord2D(25, 0, 25, 0), new Coord2D(50, 0, 50, 0), new Coord2D(50, 20, 50, 20) } ), 5, 50, 20, 129, 5, ModelRendererTurbo.MR_FRONT, new float[] {50, 20, 25, 15, 19});
bodyModel[11].rotateAngleX = -4.71238894F;
bodyModel[11].rotateAngleZ = 3.14159263F;
bodyModel[11].setRotationPoint(15F, -8F, 30F);

bodyModel[12].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(45, 0, 45, 0), new Coord2D(46, 1, 46, 1), new Coord2D(47, 3, 47, 3), new Coord2D(49, 5, 49, 5), new Coord2D(50, 10, 50, 10), new Coord2D(45, 15, 45, 15), new Coord2D(20, 10, 20, 10), new Coord2D(5, 5, 5, 5) } ), 20, 50, 18, 120, 20, ModelRendererTurbo.MR_FRONT, new float[] {8, 16, 27, 10, 6, 3, 3, 2, 45});
bodyModel[12].rotateAngleZ = 3.14159263F;
bodyModel[12].rotateAngleX = 3.14159263F;
bodyModel[12].setRotationPoint(20F, -13F, 10F);

bodyModel[13].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(20, 0, 20, 0), new Coord2D(30, 6, 30, 6), new Coord2D(30, 20, 30, 20), new Coord2D(20, 26, 20, 26), new Coord2D(6, 26, 6, 26), new Coord2D(0, 20, 0, 20), new Coord2D(0, 6, 0, 6) } ), 25, 30, 26, 98, 25, ModelRendererTurbo.MR_FRONT, new float[] {9, 14, 9, 14, 12, 14, 12, 14});
bodyModel[13].rotateAngleX = 3.14159263F;
bodyModel[13].rotateAngleZ = 3.14159263F;
bodyModel[13].setRotationPoint(70F, 0F, 10F);


bodyModel[14].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(14, 0, 14, 0), new Coord2D(20, 6, 20, 6), new Coord2D(20, 14, 20, 14), new Coord2D(14, 20, 14, 20), new Coord2D(6, 20, 6, 20), new Coord2D(0, 14, 0, 14), new Coord2D(0, 6, 0, 6) } ), 2, 20, 20, 68, 2, ModelRendererTurbo.MR_FRONT, new float[] {9, 8, 9, 8, 9, 8, 9, 8});
bodyModel[14].rotateAngleX = 3.14159263F;
bodyModel[14].rotateAngleZ = 3.14159263F;
bodyModel[14].setRotationPoint(75F, -2F, 35F);

bodyModel[15].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(22, 0, 22, 0), new Coord2D(21, 1, 21, 1), new Coord2D(1, 1, 1, 1), new Coord2D(0, 0, 0, 0) } ), 2, 22, 1, 46, 2, ModelRendererTurbo.MR_FRONT, new float[] {0, 2, 20, 2, 22});
bodyModel[15].rotateAngleX = 1.57079631F;
bodyModel[15].rotateAngleY = 4.71238894F;
bodyModel[15].setRotationPoint(-50F, -12F, -11F);

bodyModel[16].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(20, 0, 20, 0), new Coord2D(30, 32, 30, 32), new Coord2D(20, 32, 20, 32) } ), 2, 30, 32, 102, 2, ModelRendererTurbo.MR_FRONT, new float[] {38, 10, 34, 20});
bodyModel[16].rotateAngleZ = 3.14159265F;
bodyModel[16].rotateAngleX = 0.52359878F;
bodyModel[16].setRotationPoint(100F, 0F, -23F);

bodyModel[17].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(20, 0, 20, 0), new Coord2D(30, 32, 30, 32), new Coord2D(20, 32, 20, 32) } ), 2, 30, 32, 102, 2, ModelRendererTurbo.MR_FRONT, new float[] {38, 10, 34, 20});
bodyModel[17].rotateAngleZ = 3.14159265F;
bodyModel[17].rotateAngleX = -0.52359878F;
bodyModel[17].setRotationPoint(100F, -1F, 23F);

bodyModel[18].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(0, 0, 0, 0), new Coord2D(25, 0, 25, 0), new Coord2D(35, 57, 35, 57), new Coord2D(25, 55, 25, 55) } ), 2, 35, 57, 155, 2, ModelRendererTurbo.MR_FRONT, new float[] {61, 11, 58, 25});
bodyModel[18].rotateAngleY = 3.14159263F;
bodyModel[18].setRotationPoint(100F, -23F, -1F);

bodyModel[19].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(54, 0, 54, 0), new Coord2D(60, 6, 60, 6), new Coord2D(60, 14, 60, 14), new Coord2D(54, 23, 54, 23), new Coord2D(6, 23, 6, 23), new Coord2D(0, 14, 0, 14), new Coord2D(0, 6, 0, 6) } ), 30, 60, 23, 152, 30, ModelRendererTurbo.MR_FRONT, new float[] {9, 8, 11, 48, 11, 8, 9, 48});
bodyModel[19].rotateAngleY = 1.57079631F;
bodyModel[19].setRotationPoint(85F, 0F, 30F);

bodyModel[20].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(14, 0, 14, 0), new Coord2D(20, 6, 20, 6), new Coord2D(20, 14, 20, 14), new Coord2D(14, 20, 14, 20), new Coord2D(6, 20, 6, 20), new Coord2D(0, 14, 0, 14), new Coord2D(0, 6, 0, 6) } ), 10, 20, 20, 68, 10, ModelRendererTurbo.MR_FRONT, new float[] {9, 8, 9, 8, 9, 8, 9, 8});
bodyModel[20].rotateAngleY = 1.57079631F;
bodyModel[20].setRotationPoint(115F, 0F, 25F);

bodyModel[21].addShape3D(0, 0, 0, new Shape2D(new Coord2D[] { new Coord2D(6, 0, 6, 0), new Coord2D(14, 0, 14, 0), new Coord2D(20, 6, 20, 6), new Coord2D(20, 14, 20, 14), new Coord2D(14, 20, 14, 20), new Coord2D(6, 20, 6, 20), new Coord2D(0, 14, 0, 14), new Coord2D(0, 6, 0, 6) } ), 10, 20, 20, 68, 10, ModelRendererTurbo.MR_FRONT, new float[] {9, 8, 9, 8, 9, 8, 9, 8});
bodyModel[21].rotateAngleY = 1.57079631F;
bodyModel[21].setRotationPoint(115F, 0F, -6F);



if(VarGear == true)
{

}
if(VarDoor == true)
{

}
if(VarWing == true)
{

}



tailModel = new ModelRendererTurbo[0];



if(VarGear == true)
{

}
if(VarDoor == true)
{

}
if(VarWing == true)
{

}



leftWingModel = new ModelRendererTurbo[0];



if(VarGear == true)
{

}
if(VarDoor == true)
{

}
if(VarWing == true)
{

}



rightWingModel = new ModelRendererTurbo[0];



if(VarGear == true)
{

}
if(VarDoor == true)
{

}
if(VarWing == true)
{

}


propellerModels = new ModelRendererTurbo[0][0];



yawFlapModel = new ModelRendererTurbo[0];



pitchFlapLeftModel = new ModelRendererTurbo[0];



pitchFlapRightModel = new ModelRendererTurbo[0];



pitchFlapLeftWingModel = new ModelRendererTurbo[0];



pitchFlapRightWingModel = new ModelRendererTurbo[0];



// Stuff not used in this modeltype. Should be defined to avoid errors.

topWingModel = new ModelRendererTurbo[0];


flipAll();

}

// Replace with your propeller function
private ModelRendererTurbo[] makeProp(int i, int j, int k)
{
ModelRendererTurbo[] prop = new ModelRendererTurbo[0];
return prop;
}
}

Now I think what it does is divide the whole model up into various sections, in this case I've only used body parts because the A-144 is not an atmospheric fighter, so it doesn't need flaps, although it origionally did.
So I think it is possible to make an entity with many models, but I don't fully know.
Spoiler:
Image
Mistake Not... wrote: This isn't rocket science, *!
Image

Spoiler:
Image

Ivan2006
Fleet Admiral
Fleet Admiral
Posts:3021
Joined:Fri Dec 07, 2012 12:10 pm
Affiliation:[redacted]
IGN:Ivan2006
Location:In a universe.
Contact:

Re: What do we not want?

Post by Ivan2006 » Sat Apr 06, 2013 2:15 pm

I think it´s important to allow people to combine anything with everything.
If you take tekkit/FTB, for example, you see that almost everyone uses different machines and sets them up differently to do the same task (e.g. sorting items).
There are even countless possibilities for a single machine, e.g. the "frame quarry" which you get when you arrange RP2 frames and block breakers in a way to make them mine straight down to bedrock.
The basic components are the same, but there is still difference and individuality in how you connect them and make them work.
How do they achieve that?
By simply having a crapload of blocks and machines that are all somewhat able to be combined into amazing contraptions.
I´m not sure we can ever achieve as much content as FTB, just because of the much higher ammount of people working on it, but I think if we just keep releasing new content, we should be able to keep the crowd entertained.
Quotes:
Spoiler:
CMA wrote:IT'S MY HOT BODY AND I DO WHAT I WANT WITH IT.
Tiel wrote:hey now no need to be rough
Daynel wrote: you can talk gay and furry to me any time
CMA wrote:And I can't fuck myself, my ass is currently occupied

ACH0225
Vice Admiral
Vice Admiral
Posts:2312
Joined:Sun Dec 09, 2012 10:21 pm
Affiliation:Strigiforme
IGN:ACH0225
Location:Cuuyth

Re: What do we not want?

Post by ACH0225 » Sat Apr 06, 2013 2:25 pm

Make it so modules are just an easy way to do things. One could have a fully made engine that is kinda efficient, or they could experiment with fuel modules and blast cones to make the most efficient design possible. Then they could also make strange, unorthodox, insane creations like a nuke-driven engine. And so long as there are as many options as we can throw out there, people will combine them randomly to achieve a desired outcome. Someone might have a stealth ship with a fighter to draw out enemies, and then destroy them. In the end, any sentient being will attempt to design their own method of operation. The reason Minecraft is so successful is because it allows for combinations and want the player to figure things out.

TL;DR- If you code it, they will come.
Image
fr0stbyte124 wrote:5 months from now, I will publish a paper on an efficient method for rendering millions of owls to a screen.
mfw brony images
Spoiler:
Image
Image
Image
Image

joykler
Lieutenant
Lieutenant
Posts:462
Joined:Sat Jan 19, 2013 3:49 pm
Affiliation:mercenary
IGN:joykler

Re: What do we not want?

Post by joykler » Sat Apr 06, 2013 5:08 pm

if you add the computer layer over that
with each machine having preferences and working conditions

people can have total controll and tweak and try what they want

Prototype
Developer
Posts:2968
Joined:Fri Dec 07, 2012 1:25 am
Affiliation:NSCD
IGN:Currently:Small_Bear
Location:Yes

Re: What do we not want?

Post by Prototype » Sat Apr 06, 2013 5:26 pm

We don't want to make it too complicated, that'll drive people away
Spoiler:
Image
Mistake Not... wrote: This isn't rocket science, *!
Image

Spoiler:
Image

Post Reply