Sharing custom code
Posted: 2014-09-28, 15:38
Hi Carsten,
I want people to have access to my game code etc, as part of cafu as default, but my ideas involve making a lot of changes to the component system, in terms of components used and the way they are constructed. So I was wondering how I would get this implemented.
So I had a thought, rather than making duel, I would write all the component code into deathmatch and create a pull request for it. As you are developing and progressing other parts of the engine, I thought I could take on responsibility of turning deathmatch into something that people can play off the bat, but also add all the other components that I have created, so even if they are not part of deathmatch, people can use them. This would include my CompTeamNumber and other things.
Obviously you would need to clarify and check the code when I submit it, but I thought it made more sense than trying to make a separate game requiring a separate build of cafu. It is not exactly user friendly:)
Other changes would be simplified players, without health, score & weapon/inventory components etc, to deal with pre-game/ready room scenarios. This is why I wanted to understand subclassing components, as with a central baseplayer, which only controls input, camera and model/physics ,could be easily scripted to add other components to make specific lifeforms for in game use. I would make health\armor\score and eventually movement components which would be ale to be scripted in to create completely unique player characters with a single sub-class of base player component and adding the relevant components in scripting.
Essentially, I would be looking to break down your current HumanPlayer component into a base player component, and like I have already turned score into a component, I will do the same with health and armor, and other non essential stuff for a basic controllable entity. Some games may not want weapons, health and score for example. I would also eventually like to make a movement component, where all movement is handled, so different movement abilities can easily be added and shared between players, by the simple adition of the component and a few variables.
Essentially while not making much of a game, I would be building up the basics of a very flexible component and scripting implementation, which should greatly simplify game creation for other developers.
If you think this will be a good idea, let me know and I will start constructing the game right away.
I want people to have access to my game code etc, as part of cafu as default, but my ideas involve making a lot of changes to the component system, in terms of components used and the way they are constructed. So I was wondering how I would get this implemented.
So I had a thought, rather than making duel, I would write all the component code into deathmatch and create a pull request for it. As you are developing and progressing other parts of the engine, I thought I could take on responsibility of turning deathmatch into something that people can play off the bat, but also add all the other components that I have created, so even if they are not part of deathmatch, people can use them. This would include my CompTeamNumber and other things.
Obviously you would need to clarify and check the code when I submit it, but I thought it made more sense than trying to make a separate game requiring a separate build of cafu. It is not exactly user friendly:)
Other changes would be simplified players, without health, score & weapon/inventory components etc, to deal with pre-game/ready room scenarios. This is why I wanted to understand subclassing components, as with a central baseplayer, which only controls input, camera and model/physics ,could be easily scripted to add other components to make specific lifeforms for in game use. I would make health\armor\score and eventually movement components which would be ale to be scripted in to create completely unique player characters with a single sub-class of base player component and adding the relevant components in scripting.
Essentially, I would be looking to break down your current HumanPlayer component into a base player component, and like I have already turned score into a component, I will do the same with health and armor, and other non essential stuff for a basic controllable entity. Some games may not want weapons, health and score for example. I would also eventually like to make a movement component, where all movement is handled, so different movement abilities can easily be added and shared between players, by the simple adition of the component and a few variables.
Essentially while not making much of a game, I would be building up the basics of a very flexible component and scripting implementation, which should greatly simplify game creation for other developers.
If you think this will be a good idea, let me know and I will start constructing the game right away.