Fengist's Forum Posts

  • Well... that's rather confusing.

    If you use the ticked value in any way, it changes the font face for some reason. I even tried storing the ticked value as a global var, rounded it, converted it to int and it still changes the font face. I have honestly no idea why it's doing that. And it appears to only be doing it for the value returned by the plugin. I set the text size manually and it worked as intended.

    But I did find a workaround.

    In the line where you set the START_TEXT font size to the ticked value, add a line below it.

    -> START_TEXT: Set font face to "Arial" (normal)

  • Without seeing your actual code, it's going to be near impossible to diagnose this.

  • The easiest way to do this would be with an Ajax call to a php script on a website that saves it to a MySQL database.

    Construct really only has 2 ways of communicating outside of the client, Ajax and WebSockets. WebSockets could do the job as well but that requires creating a server. Having Ajax send that data to a website with a php script would be much, much easier. The php script could then stuff all of that data into a database or... append data to a .csv file if you wish.

  • Then the steps I outlined above should still help pinpoint the cause.

  • github.com/richtr/NoSleep.js

    Now, how to incorporate that into C3???

  • Project properties > display > orientations.

    You should be able to select portrait and it shouldn't rotate any more.

  • Well, that's hard to say. The first thing I'd do is to enlist Chrome to help me find out.

    When you're previewing your project, hit f12 to bring up the developer console. At the top, click on memory. You should see several things listed under 'select javascript VM instance'. Here, you can watch your project's memory usage and chrome will show up and down arrows as it uses more or less memory. You can also confirm here how much memory it's been using.

    If you click on 'take a snapshot' chrome will look through your project and provide you a list of what is using how much memory. A lot of that is going to be difficult to decipher but what you'll be looking for is really large numbers on the right hand side under 'retained size.' If you start expanding out the tree looking at what's consuming the most memory, you may... I say may... be able to recognize some of the data in there and spot the problem.

    You can also select the performance tab at the top, click on the memory checkbox, and record your session. One of the graphs will be of memory and at the top will be screenshots of where you were in the game. If you see a huge spike in the memory, look at the screenshot to see what was happening and that may help you zero in on the problem.

    One other thing to check if you use local storage, select the application tab at the top and then select 'clear storage'. You'll see a pie chart that will tell you how much memory local storage is using.... and guess what, local storage has a huge limit (30gb on my system with 32gb ram). You can browse through the local storage tree below that. Start looking under 'IndexedDB' and look for LOTS of key/value pairs.

    I can say with little doubt that it's likely somewhere in your code and not C3. While I've been writing this, my latest project has been running in the background and it's staying at a pretty solid 42mb.

  • You don't have do but yes, I'd create new icons. I'd start with a 512x512, create that, then resize and save one of each down to the 16x16.

  • You'll want to create your own icons.

    You'll need a program like photoshop or gimp, something that saves in the .png format.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I took a look as well and the first problem is, it's obviously a google translate of a Chinese document which makes it nearly impossible to comprehend.

    But, here's what I take from it with my limited knowledge of currency mining:

    Egretia appears to be setting up a mining pool:

    When performing blockchain calculations only the one that completes the correct blockchain gets paid. Pools are designed to allow miners to join forces and share in the profits.

    Bitcoins cannot be effectively mined with computers any more. They require a device called an ASIC ( Application-specific integrated circuit) which are expensive. Other cryptocurrencies can be mined with 'rigs' designed to use the GPU of multiple video cards in order to do the calculations. Profitability of these rigs is based primarily on the cost of electricity compared to the number of hashes you can generate per second. Top of the line systems are measured in terahashes. My video card is an RX580. It's rated at 30-40 megahashes/sec, assuming it were used exclusively for mining.

    If we assume that electricity costs $0.00 and I were to run this card 24/7 mining ethereum, I'd make $242.75 per year at today's prices, which pays for the card and puts $62.75 in my pocket. But that's a pretty decent video card... right? And that's with free electricity. Egretia does not list how many hashes/sec you're going to get. And I'm betting it's for a very good reason. Just a guess, but I'm betting that running a game under HTML AND trying to hash a blockchain, you'd be lucky to get 200 hashes/second per instance of the game running. In which case, you'd make $ 0.001618 per year assuming that game runs 24/7. But let's give it the benefit of the doubt. Let's assume you'll make 200 kilohashes per second off this game running 24/7 on someone else's machine. Your annual profit off one instance running? $1.62.

    Now, factor in two more things.

    1. Your game is going to be calculating these hashes AND trying to make a fun, playable game at the same time. Inside a browser running HTML5 and JS, I see one laggy ass game.

    2. Serious crypto miners are often caught in a conundrum. Electricity costs vs profitability. As a result, they're usually selling off their hardware every year or two and upgrading because the crypto currencies keep making it more and more difficult to hash, requiring faster and faster hardware which eats more and more electricity. I can tell you without a doubt that the overall cost of electricity compared to the hash rate of this software is going to be horrid. Their gimmick? You're making your customers pay for the electricity, and a lot more than you'll be making. Which means, if you have ANY concern for this planet whatsoever and conserving it's resources, it's just a bad idea.

    While I'm just guessing at the numbers, I personally think that if I were to get one customer out of 10 to purchase a vanity item for $5.00 PER YEAR... I'd make more money.

    Here, do your own math and see what conclusions you draw.

    (https://www.cryptocompare.com/mining/calculator/eth)

    The way I see it, only that company is going to make money and, at the expense of the planet. Your game would be just one minor cog in their machine.

  • Good to hear. I did some quick checking and as strange as it sounds, you do have to use AJAX to load the .json file. I would have thought that the json element could load and parse a file itself. Guess not.

    The tag is just a way to identify it when events happen. One of the things I do is create an Ajax on any event and then, under that, compare the tags to choose what to do.

  • And... is there a reason you're using the ajax request? Normally that's to contact an external website to get data but I don't see any url info in your request. Is that json file stored in the project? If so, you should be able to just Json.download | "Working_Word_List_Array.json"

    I could be wrong about that. Haven't worked with loading json directly from files either.

  • haven't worked with loading arrays from json but...

    since you're using AJAX to get the json I believe the json will be in the ajax.lastdata.

    Try this.

    Working_Word_List_Array | Load from JSON string Ajax.LastData.

    And you're likely to run into another problem. You're firing off a second ajax request the instant the first comes in. Have the on ajax completed fill the array with the Ajax.LastData and then, just below that, send off the next ajax request.

    I think what you are assuming is that when the ajax request comes in that it stores that data in the 'tag'. It does not.

  • One issue with IAP is you have to have a backend, and that requires server storage, and that's a whole other can of worms.

    Speaking of currency, something like Facebook's Crypto currency might be a viable option.

    Screw bitcoin though, that stuffs toxic.

    Now there's a thought, let's just add some JS crypto mining code to our games and... problem solved! Then again, we'd all need to make games about snails so that the frame rate keeps up.

  • Well, one thing you may not be considering is that once a company gets into processing money transactions a whole new can of worms open up. You essentially become a banking institution. And that requires a whole new team of experts to manage and a whole new set of constantly changing regulations to keep up with. I'd rather the guys focus on what they're good at, making a programming IDE.

    And yes, I understand that learning other languages like PHP and JS for that matter can be a daunting task for those that have never written code. However, you write code any time you use Construct. If you've made even one game you already understand the logic of booleans, for loops, while statements, string variables and a whole host of other programming standards. Learning a new programming language is just a matter of syntax. When I first learned programming in BASIC on a TRS-80 Mod 1, it involved me sitting in a high school chemistry room closet with the computer and the manual for six weeks. And many of those terms above, I learned from that experience and still apply to languages today.

    Construct will never be a end all be all solution. It can't be. No IDE is. Even high level languages like C# still need external resources to function. The program I told you I sell, it's written in Delphi, a flavor of Pascal. But I still need PHP scripts on the back end to handle everything from registrations to help files. The game I'm working on now, it requires a PHP back end to handle registrations and send HTML back and forth to the client. And most likely, I'm going to need to learn how to create a WebSockets server for the chat feature using either C# or node.JS.

    You can create a game in Construct. That's what it's designed to do and it does it well. If you want to get serious about this and make it a livelihood, you'll need to crack open a few books.