Kyatric's Forum Posts

  • I've heard about this promotion via a GDC talk the two promoters of the bundle gave. The talk isn't that pertinent, but it seems to point a pattern. The more the promotion comes to its deadline, the more games and stuff are added (like the two bundle for the price of one).

    As you said, they already added another game to the bundle.

    8 Days to go, the million is almost obtained, I guess they will have another nice sum to offer to charity on this promotion.

    Considering the games, I'm personnaly not that attracted to them. I've tried hammerfall (awesome game, but very difficult imo).

    The others game don't appeal much to me, and I haven't been able to connect to steel storm's website and see what type of game it is. Guess their server suffered from sudden glory thanks to/because of the bundle.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • I think though that if Microsoft was in googles position that they'd be doing the exact same thing.

    Well Microsoft have been in Google's position for years prior to the rise of Google. Who held the OS monopoly ? Who added "connectivity" under the form of silent spies on XP, vista and later, reporting any of your connection to massive data servers ?

    They are attacking google for what they've been doing on their own Messenger protocol for years (listening widely to the "grid", picking keywords).

    They might not admit it, but I haven't forgot about all of this. Attacking your competition on such a practice, when you've been yourself leader and pioneer of it for years is really ridiculous.

    Every internet surfer for the past decade have been aware (or should be) that we are tracked day by day, request by request. it's not a theory conspiracy, it's more a fact to acknowledge.

    In South Korea they seem to be stuck with it! Read this blog post - the government mandated ActiveX controls for online banking in the 90s, and now nobody knows how to upgrade from IE6 without breaking everything...

    Korea's situation is pretty peculiar. Social security numbers have been closely linked with internet connection. They have a different relationship towards connection on the internet compared to a lot of other countries.

    I wasn't aware though that they were stuck with IE6 neither why they were in this situation. Once again it proves why the results of the test should be looked up closely. Yet the pattern is engaging for "easy diss".

  • What if I'll make a Czech translation of the page (and I believe, there are users who'd translate it into other languages). Would it be possible to switch the language automatically according to the ip of a viewer? I you're ok, I could send you the translation tomorrow.

    Good idea. And if not switching, at least proposing little flag buttons to access the proper language (I love little flags buttons on webpages ^^)

  • Well, when you see that the last motivationnal purposed video from microsoft which pick on google is posted on... youtube.

    Well yeah, shame doesn't kill, so why bother.

    Nevertheless, I would take the result from "The Register" with some perspective. An IQ test can't qualify to "dumb" as the type of intelligence tested is very restrictive.

    Moreover, such type of test should depend on the regionality, and be adapted. (If I take the test in english, as a non-native english speaker the test will be harder for me and I may miss subtilties that I wouldn't have in my own language).

    Yet you can believe that people, in mid 2011 still stuck with IE 6.0 are "retarded". At least they are in the upgrade of their browser. ^^

  • Extract from editime.js

    AddStringParam("\"data\"", "Data to encode", "\"\"");
    AddExpression(0, ef_return_string, "Encode MD5 (Hexa)", "Encoding", "encodeMD5", "Encodes the data provided with MD5 algorithm. Hexadecimal output.");
    AddStringParam("\"data\"", "Data to encode", "\"\"");
    AddExpression(1, ef_return_string, "Encode MD5 (Base64)", "Encoding", "encodeMD5B", "Encodes the data provided with MD5 algorithm. Base64 output.");

    I think there is an error in the way the sdk is using the parameters of the function AddExpression.

    AddExpression(0, ef_return_string, "Encode MD5 (Hexa)", "Encoding", "encodeMD5", "Encodes the data provided with MD5 algorithm. Hexadecimal output.");

    0 : First param _ ExpressionId

    ef_return_string : Flag

    "Encode MD5 (Base64)" : Supposed string to be used as "name" of the expression in the ACE Table

    "Encoding" : Group

    "encodeMD5" : Referal name string in runtime (related expression will be found using this string). String to appear in events too.

    "Encodes the data provided with MD5 algorithm. Hexadecimal output." : Explanation/comment in the ACE table.

    So the error is in the fact that "encodeMD5" is used as expression name in the ACE table. Supposed name is not used at all seemingly.

    Maybe I made a mistake in the understanding of this function. Please correct me if so.

  • Menu: Save as project

    Creating a new folder in the commondiag window

    Naming the folder "Hash-test", validating

    Filling the folder name field with "hash test" as name for my project (mistake, I know now that I'm reviewing each points)

    On save :

    ---------------------------
    Construct 2 Check failure
    ---------------------------
    Check failure!  This is probably a bug:
    
    Saving project to folder that does not exist
    
    Condition: FileExists(project_folder.c_str())
    File: Projects\Project.cpp
    Line: 420
    Function: void __thiscall Project::SaveToNewFolder(const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &)
    Build: release 49 (32-bit) checked
    Component: Construct 2 IDE
    (Last Win32 error: 2)
    
    You are using a 'checked' release of Construct 2, intended for testing, which causes certain errors to be reported this way.  Hit Ctrl+C to copy this messagebox - it's useful information for the developers, so please include it with any bug reports!  Click 'Abort' to quit (unsaved data will be lost!),'Retry' to turn off messages for this session and continue, or 'Ignore' to continue normally.
    ---------------------------
    Abandonner   Recommencer   Ignorer   
    ---------------------------
    

    The folder exists though. In fact the first few times I tried creating a folder and saving a project in it, to me, I had to fill the field with the name of my project (I hadn't paid enough attention to the label of the field).

    C2 r49; Windows XP; FireFox 5; ATI Radeon HD 4800

    (Switching to r50 now ^^)

  • Oops, on further inspection it looks like an oversight in the SDK. 'singleglobal' objects can't have properties right now. You'll have to work around it with actions to set the settings.

    As those properties are not vital to the user at this stade of the plugin, I'll comment the lines refering to the properties (as it seems to me the code should work once the properties are part of the 'singleglobal' flaged objects.)

    I'll be uncommenting them when the changelog of a future build will indicate me to ;)

    BTW I think MD5 is better described as a hash than encryption - I think encryption is supposed to be reversible.

    You're right, thanks for the notice.

    JS is a fun language to work with, and the design of C2's extensions make them quite forward/"simple" to make. (cheers on the smart comments)

    It's thrilling.

    Yes, please call this Hash as it is easily reversible. You don't want to give folks the wrong idea about the plugin's purpose. The goal of the hash algorithm (MD5) is to verify that the data hasn't been changed.

    Also, why not do SHA-1 if you are going to do a cryptographic hash algorithm.. MD5 has already been broken. <img src="smileys/smiley19.gif" border="0" align="middle" />

    Category name changed to Hash, and reference to cryptography removed.

    I intend to implement SHA-1 and SHA-256 in the same plugin. I'll first have to get the md5 different outputs to correctly work and then implement the other.

    It should end as a multi-algorithms Hash plugin.

  • The property name accessed in runtime.js has to exactly match the property name in edittime.js. I noticed you have

    "Hex output format" in edittime.js and

    "Hexadecimal output format" in runtime.js,

    so at runtime you'll get a "property does not exist"/"property is undefined" error. If you change them to match does that fix it?

    No it doesn't. The name change was a test I didn't finished, as I was wondering if maybe the length of the properties entered in play.

    I just tried with "Hex output format" for both, and still "this.properties is undefined Line 50". It's the whole properties array which is absent, not that single property.

    EDIT: I even tried "Hexoutput" as name of the property and it still didn't work.

    So it's not a length thing. I'll keep on looking.

  • <font color="blue">This is a work in progress, the current plugin is broken.</font>

    http://dl.dropbox.com/u/36472942/construct/plugin/wip/md5_0.e.zip

    I've been working on turning a JS implementation of the MD5 algorithm into a plugin.

    Basicly, it is an expression that allows you to encrypt the data you feed it with into hexadecimal MD5.

    I've had a previous version that worked. (You might try it and use it if you want)

    As the implementation of the algorithm has several output formats (hexa, base64 and even allows different types of encryption in the spectrum of the same functions use) I'm working on allowing the user to choose between them.

    At the moment I'm stuck, as I've been adding properties to my object. And now, in the runtime, firebug tells me that "this.properties" isn't defined, blocking the whole process.

    Well, it is in my edittime.js though.

    (My test project is an object MD5 and an object text. On startup of layout, I set Text.text to MD5.Encrypt("Hello world !").)

    I've used the structure/code from the plugin text to guide me. I've also looked in about all of the plugins code, and it seems to me they are all following the same pattern.

    Right now, I can't seem to find what's wrong. I'll look over it later (and/or tommorrow) but if in the mean time the community can bring me an answer i'll be more than happy ^^

    I'm still new to JS, and mainly learning it by going through C2's plugins and behaviors folders ^^ (looking a bit over jquery's documentation for future plugins too)

    Edit: I'll favor the occasion to suggest an option in C2 that allows to reload/rehash the plugins and behaviors (if it is possible). As of now, on any change on my plugin, I have to quit and launch again the editor, and set up my test project (save/load can't really work as any change on the plugins makes old saves incompatible). Doable, but tedious. If it can be added harmlessly, I'll be thankful.

  • testlink - firefox test was very good

    http://dl.dropbox.com/u/36224287/shooter/index.html

    I can confirm.

    The caching issue looks like a problem with Construct 2's own local HTTP server. It's just that Firefox and Chrome seem to be extremely fussy about the way the server talks to them. As you can imagine C2's own server is not designed to be a full blown internet web server - it's just to serve up some local files - so it does not implement all possible internet server features. This seems to confuse Firefox and Chrome a bit and so they download sound files multiple times. The other browsers aren't bothered and cache anyway.

    [...]

    So, the situation doesn't seem to be as bad as I thought! Chrome can even loop sounds as well, but Firefox still doesn't.

    More features can be added but the rest of the HTML5 audio features are still variously supported and unsupported. Still, I could add one or two and see how they work for everyone.

    A good news overall.

    By features, you mean pan and volume or are you thinking about more ?

    For common sound effects I can add a "preload sound" action to download it immediately on startup, so there's no latency on first play. Apart from that, streaming is probably a good idea for the rest.

    Sound good?

    Sounds really good.

  • I don't know about the technical side (it will take more ram, more cpu, or not, bla bla) but I see 2 other points there.

    First grouping or separating will depend on your engine (like having an ini file in each folder containing the images of the group or something like that or rather a single data.ini in the root folder).

    It is somehow a matter of taste.

    The other point I see is that through .ini files, ppl will be able to modify the values of the fighters and groups in the notepad. Once again, depending on your engine it might be an issue.

    If you want to prevent people from accessing those datas, you may create a simple editor, place all your datas in a hashtable and export it. Than in your game, load the hashtable and there are your datas.

    You could still edit those through your editor, but simple notepad edit would be discarded.

    For the technical side, I'll let you wait for other peoples answers.

  • If I were you, I'd rather make a function that would check the inventory to see if the param object is present. (said function would be called from the collision detection between char & door)

    The function would return either 1 if the object is present or 0 if it is not.

    I'd test that return in a subevent. If it is equal 1 then I'd remove the object from the inventory array (thanks to a dedicated simple function that would remove param object from the array) and open the door. If it is not, play a sound, or insult the player and do whatever. ^^

    "You need a KEY dumbass !"

  • How are you supposed to calculate the distance between red and green if you don't know green.y ? ^^

    It seems to me the formula is inadequate for the purpose, isn't it ?

  • Tulamide, I thinks he wants to know how to get the Y coordinate for any point on the line between green and red.

  • I even started with VB3 ^^

    But yeah, VB6 was so much fun in its time, and was a good base, developper-wise, to handle other languages after (C had, to me, a lot of similarities with VB when I started to learn it).

    Tbh, the last time I launched VB6 (a few years ago now), I was quite lost in it though. It took me quite some time to realise a simple app that I know I could have done a lot faster during the time I was used to VB ^^