What is this game?   

A relaxing and juicy puzzle (simulator) game about electrical plugs connecting into their corresponding outlets. 

It works just like in real life! If a plug is long and/or fat then it will block other outlets underneath it. 

Strategically position your plugs so they all fit in an available outlet!


- Plug the plugs into the outlets 

- Match the correct hole shape

- Try to fit all the plugs

- Make everyone happy :)



   How do I play?   

Click to Rotate Plug

Drag to Move Plug



   Who made this?   

Sam Feng - Programming, Music - @samfenggames

Jose Salas - Art, Sounds - @salas_games


Comments

Log in with itch.io to leave a comment.

Fantastic game! The music, sfx, and particles really make it shine and the mechanics are straightforward and never frustrate the player. The auto-rotate was genius! Please keep making games in this style.

(1 edit)

very fun game! I do find the changing colors cool, but it is kinda jarring to me personally to not have a clear this means it works and this mean it wont fit cause the colors keep changing. I mean can typically just see if it will or will not fit, but it just is just smth in my head like that looks incorrect cause of the color. Especially when the correct color becomes a redish color and wrong color becomes a purplish color. Also was a bit confused why certain stacking was not allowed. It seemed when a plug was put into a plug within a plug it would only work if it was over hanging? But since the plugs are flat and above, so long as the plug is oriented correctly it should just go over the top of the plug. this was noticeable in level 12 especially

(+2)

This game rocks. You guys did a great job on it.

Thank you!

(1 edit)

I'm getting the same error (Firefox 101.0 64-bit on a Windows PC).

Console messages:

exception thrown: RuntimeError: indirect call to null,@:wasm-function[7152]:0x1e9f15 
@:wasm-function[2566]:0xa3884 @:wasm-function[11003]:0x33cbd2 @:wasm-function[21633]:0x6dc486 @:wasm-function[13153]:0x3d46d5 @:wasm-function[1444]:0x5f16a @:wasm-function[6652]:0x1b85b4 @:wasm-function[1250]:0x48122 @:wasm-function[1627]:0x6aee7 @:wasm-function[35973]:0xa94008 @:wasm-function[950]:0x364fa @:wasm-function[18670]:0x56aa91 @:wasm-function[5271]:0x15aaa1 @:wasm-function[18658]:0x569cf4 @:wasm-function[831]:0x2be16 @:wasm-function[36928]:0xab66b5 @:wasm-function[7123]:0x1e936a @:wasm-function[7152]:0x1e9de3 @:wasm-function[2566]:0xa389a @:wasm-function[11003]:0x33cbd2 @:wasm-function[21633]:0x6dc486 @:wasm-function[13153]:0x3d46d5 @:wasm-function[1444]:0x5f16a @:wasm-function[950]:0x364fa @:wasm-function[18670]:0x56aa91 @:wasm-function[18670]:0x56aa47 @:wasm-function[5271]:0x15aaa1 @:wasm-function[36889]:0xab56c9 @:wasm-function[15117]:0x4b1701 @:wasm-function[22484]:0x6ee5e4 
Godot/Module._main@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9:326100">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9:326100</a> 
callMain@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9:331025">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9:331025</a> 
SafeEngine/start/Engine<!--</<@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:696:17" class="redactor-linkify-object"--><a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:696:17">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:696:17</a> 
SafeEngine/start/Engine<!--<@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691:14" class="redactor-linkify-object"--><a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691:14">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691:14</a>" class="redactor-linkify-object"><a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691:14">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691:14</a> 
promise callback*SafeEngine/start/Engine<@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:690:31">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:690:31</a> 
promise callback*start@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:669:22">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:669:22</a> 
SafeEngine/startGame/Engine<@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:729:22">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:729:22</a> 
promise callback*startGame@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:728:8">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:728:8</a> 
@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:225:12">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:225:12</a> 
@<a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245:5">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245:5</a>  index.js:362:18
    onPrintError <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:362
    callMain">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:362
    callMain</a> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9
    Engine">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:9
    Engine</a> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:696
    Engine">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:696
    Engine</a> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691
    (Async:">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:691
    (Async:</a> promise callback)
    Engine <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:690
    (Async:">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:690
    (Async:</a> promise callback)
    start <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:669
    Engine">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:669
    Engine</a> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:729
    (Async:">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:729
    (Async:</a> promise callback)
    startGame <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:728
    ">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.js:728
    </a><anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:225">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:225</a>
    <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245</a>

and

indirect call to null index.html:215:13
    displayFailureNotice <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:215
    (Async:">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:215
    (Async:</a> promise callback)
    <anonymous> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:240
    <anonymous>">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:240
    <anonymous></a> <a href="https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245">https://v6p9d9t4.ssl.hwcdn.net/html/5903027/index.html:245</a>
(+1)

Thank you for the feedback! We believe the issue may be related to third party cookie restrictions on Firefox. 

We have updated the game and it would be great if you can give it another test run. 

If any other conflicts arise, please feel free to comment on this thread!

I'll have to go back and try it on my computer again, but it definitely works on my phone. It's cute!

(+1)

As catchphrases go, "indirect call to null" might leave a little to be desired.  (It's also all I'm seeing.)

Hi, thank you for informing us of the situation! Currently our game is a few steps away from going gold as they say, and we're sorry for the inconvenience.

It would be great to know the browser and device used when playing our game in order to give a better diagnosis.

Firefox (pretty up-to-date, whatever version that is), in Windows on a laptop.  Hope that helps!  

Thank you! We believe the issue may be related to third party cookie restrictions on Firefox. 

We have updated the game and it would be great if you can give it another test run. 

If any other conflicts arise, please feel free to comment on this thread!

I'm a different user, it's happening for me as well but in chrome (windows desktop) (giving a different message though, "null function or function signature mismatch" instead)

Console errors:

ERROR: Condition "(type & 0xFF) >= Variant::VARIANT_MAX" is true. Returned: ERR_INVALID_DATA
onPrintError @ index.js:362

   at: decode_variant (core/io/marshalls.cpp:111) - Condition "(type & 0xFF) >= Variant::VARIANT_MAX" is true. Returned: ERR_INVALID_DATA
onPrintError @ index.js:362

ERROR: Error when trying to encode Variant.
onPrintError @ index.js:362

   at: get_var (core/bind/core_bind.cpp:2214) - Condition "err != OK" is true. Returned: Variant()
onPrintError @ index.js:362

exception thrown: RuntimeError: null function or function signature mismatch,RuntimeError: null function or function signature mismatch
    at wasm://wasm/032ee88e:wasm-function[7152]:0x1e9f15
    at wasm://wasm/032ee88e:wasm-function[2566]:0xa3884
    at wasm://wasm/032ee88e:wasm-function[21635]:0x6dc53b
    at wasm://wasm/032ee88e:wasm-function[7123]:0x1e92dd
    at wasm://wasm/032ee88e:wasm-function[7152]:0x1e9de3
    at wasm://wasm/032ee88e:wasm-function[2566]:0xa389a
    at wasm://wasm/032ee88e:wasm-function[11003]:0x33cbd2
    at wasm://wasm/032ee88e:wasm-function[21633]:0x6dc486
    at wasm://wasm/032ee88e:wasm-function[13153]:0x3d46d5
    at wasm://wasm/032ee88e:wasm-function[1444]:0x5f16a
onPrintError @ index.js:362

null function or function signature mismatch
displayFailureNotice @ index.html:215

Hi! Sorry for the inconvenience!  We believe this may be a graphic driver related issue. 

We have updated the game and it would be great if you can give it another test run. 

If any other conflicts arise, please feel free to comment on this thread!