When is the SDK due?

Here we go again ... no one really knows except for "Really, really soon..."
 
They said it would come with the patch. The patch has been in "final testing" for a while now. Too long if you ask me - it probably has been handed back for alterations a few times.
 
The Great Apple said:
They said it would come with the patch. The patch has been in "final testing" for a while now. Too long if you ask me - it probably has been handed back for alterations a few times.

*raises his hand* I might be one of the culprits that caused that.
 
It's possible, but I think he means because of the issue he discovered with not consuming methods in python.
 
I'm both looking forward to it and also dreading it. Dreading it because I know I will have to make a lot of changes to my code to make it work with the new API.
I do hope they fix the game crash that happens with you attack a city and the last defender is a land unit that is loaded on a boat. I've gotten to the point now I'm in that situation I just go to the world builder and remove the boat (which removes the land unit to since it is loaded) and then put a new land unit back. A real pain and it takes away the game feel but its better than a lockup.

Roger Bacon
 
RogerBacon said:
I'm both looking forward to it and also dreading it. Dreading it because I know I will have to make a lot of changes to my code to make it work with the new API.

:D Yepp! Feel the same! Can't wait to get it, because of the numerous new API functions Locutus talked about and on the other hand I don't want get it, because I have to rework all my mods.
Thats one of the reasons, I still hesitate to release my new version of the Plot List Enhancements. I'm quite sure, as soon as I release it, the patch comes out and I have to rework it.
But maybe my Reinit Interceptor mod is obsolete then, because they managed to fix that bug. We'll see.
 
Only a few existing functions have changed, it's mostly new stuff, so I don't think anyone will have a terrible amount of reworking to do. But yeah, you will have to check all your scripts for the few changes that were made.

Shqype said:
It's possible, but I think he means because of the issue he discovered with not consuming methods in python.

I think I missed that, does anyone have a link (or can explain)?
 
Locutus said:
Only a few existing functions have changed, it's mostly new stuff, so I don't think anyone will have a terrible amount of reworking to do. But yeah, you will have to check all your scripts for the few changes that were made.



I think I missed that, does anyone have a link (or can explain)?

Check out the Python event onChangeWar() never called thread that i started in the "other place" and you will see the details. I don't think they will fix it but PeteT had an elegant solution.
 
Locutus said:
Only a few existing functions have changed, it's mostly new stuff, so I don't think anyone will have a terrible amount of reworking to do. But yeah, you will have to check all your scripts for the few changes that were made.



I think I missed that, does anyone have a link (or can explain)?
This is the one I was referring to:

http://forums.civfanatics.com/showthread.php?t=163181

I forgot about the onChangeWar one though.
 
What does SDK stand for?
 
Locutus said:
Only a few existing functions have changed, it's mostly new stuff, so I don't think anyone will have a terrible amount of reworking to do. But yeah, you will have to check all your scripts for the few changes that were made.

Few questions:

1) Is it going to be pretty self evident to those of us who arent pros yet have a good grasp at python what we are going to need to change and update with our existing code to make it workable with this?

2) Is the SDK free?

3) What is the main use of the SDK? Is it only for people who can write in C or does it have a use for more mainstream modders.
 
According to information revealed so far about SDK,
It is set of C++ source code, header and linkable library file of AI strategy decison part and some game core. Graphics handling part or any fancy easy-modding tools seem to to not included in SDK.
To make mod that utilizes the SDK, you need C++ development knowledge and tools like C++ compiler. C++ mod is much harder and takes more efforts to develope than python mod. This difficulty stems not only from the difficulty of C++ lanuage itself, but also from the complexity of game core revealed to C++ mod by SDK and low level task the C++ mod should handle. It is mainly for highly skilled professional programmer type modder.
The final output is one single DLL that will be placed in CIV4 installation directory. The DLL will be loaded when CIV4 game starts and invoked when CIV4 program decides what the AI player will do in this turn.
But once that DLL is done by skilled modder, normal player can simply download the mod DLL and put it in the game directory. Then he can use the modified functionality and AI of the C++ mod. Normal player don't have to download SDK or know something about it. It will not work with existing verision of CIV4. It requies new patched version of CIV4.
naf4ever said:
Few questions:
1) Is it going to be pretty self evident to those of us who arent pros yet have a good grasp at python what we are going to need to change and update with our existing code to make it workable with this?
2) Is the SDK free?
3) What is the main use of the SDK? Is it only for people who can write in C or does it have a use for more mainstream modders.

1) I guess it is not. Except for chanage introduced by new patch and new version of CIV 4 itself,
Python mod itself need no change or update to work with SDK enabled C++ mod.
Of couse, to utilize new fuctonality provided by the C++ MOD itself in python mod, you should change it.

2) I guess it will be availabe in free of charge via download. You may need C++ compiler and tools to deveope SDK mod but they are downloadable in free of charge, too.( like VC++ express)

3) To enhance AI behavior and make it smarter ( or wackier :)). To add new attributes and functionality to CIV4 units and buildings / cities. To change game mechinsim like how the combat is done, how the civic or religion works, how the player interacts with various game elements. To make it more efficent to do than doing it in python (like frequently called lowlevel tasks) To access game core variable and function and internal object that is not accessible from python mod API. The possibility seemed to be boundless.
 
1) Updating your existing Python scripts to work with the new patch should mostly be easy, I will publish a list of all functions that have changed so just check if your scripts use any of those -- and again, it only affects a few functions. However, my list may not be 100% complete because v1.52 was poorly documented -- but this likely can't affect more than a handful of functions, if that many. So to be sure you'll have to run all your scripts a few times to make sure your code doesn't suddenly generate errors (which if it does, will likely be of the type x does not match C++ definition y, which should only take a few moments to fix once you've found it).

2) Yes.

3) It will have many uses, anything you can do with Python you can do with the SDK, but it will be much more powerful. You could probably turn Civ4 into an RTS or shooter with the SDK if you wanted to, that's how powerful it is (although that would take so much time it'd be easier to start from scratch, but you can do it). Mostly it'll be useful because it lets you mod the AI and to do the stuff zx1111 describes.

But yes, you need to be an experienced C/C++ programmer to be able to use it. See zx1111's post.
 
3) To enhance AI behavior and make it smarter ( or wackier ). To add new attributes and functionality to CIV4 units and buildings / cities. To change game mechinsim like how the combat is done, how the civic or religion works, how the player interacts with various game elements. To make it more efficent to do than doing it in python (like frequently called lowlevel tasks) To access game core variable and function and internal object that is not accessible from python mod API. The possibility seemed to be boundless.

O yea, thats what I'm talking about. Can't wait to dive into it all and see how its put together. :D
 
Top Bottom