### Godot version

v4.0.3.rc2.official [2ac4e3bb3]

### System information

Windows 10

### Issue description

It seems that joypad button numbers are changed in Godot 4. The Godot 3->4 conversion doesn't change the button numbers.

This Godot 3 Input Map:

![kuva](https://github.com/godotengine/godot/assets/49998025/86a7db2a-b5b5-48a3-84f9-999de1ed584a)

is converted to this:

![kuva](https://github.com/godotengine/godot/assets/49998025/30ef5803-0559-4408-b0ac-e878bf167ff7)

It seems that only buttons 0-3 are same in Godot 3 and 4:

![kuva](https://github.com/godotengine/godot/assets/49998025/37818929-9582-4a11-bdbe-617fd51dd501)


### Steps to reproduce

Convert any Godot 3 project having joypad buttons assigned to inputs.

### Minimal reproduction project

[conv_test.zip](https://github.com/godotengine/godot/files/11525027/conv_test.zip)

valid = valid && test_conversion_with_regex("AAA Color.white AF", "AAA Color.WHITE AF", &ProjectConverter3To4::rename_colors, "custom rename", reg_container);
	
	valid = valid && test_conversion_with_regex("\"device\":-1,\"scancode\":16777231,\"physical_scancode\":16777232", "\"device\":-1,\"scancode\":4194319,\"physical_scancode\":4194320", &ProjectConverter3To4::rename_input_map_scancode, "custom rename", reg_container);
	valid = valid && test_conversion_with_regex("\"device\":-1,\"scancode\":65,\"physical_scancode\":66", "\"device\":-1,\"scancode\":65,\"physical_scancode\":66", &ProjectConverter3To4::rename_input_map_scancode, "custom rename", reg_container);
	
	{
		String from = "instance";
		String to = "instantiate";
		String name = "AA.instance()";
		Vector<SourceLine> got = split_lines(name);
		String expected = "AA.instantiate()";
		custom_rename(got, from, to);
		String got_str = collect_string_from_vector(got);
		if (got_str != expected) {
			ERR_PRINT(vformat("Failed to convert custom rename \"%s\" to \"%s\", got \"%s\", instead.", name, expected, got_str));
		}
		valid = valid && (got_str == expected);
	}
	
	{
		{ String base = "var roman = kieliszek.";
	String expected = "kieliszek.";
	String got = get_object_of_execution(base);
	if (got != expected) {
		ERR_PRINT(vformat("Failed to get proper data from get_object_of_execution. \"%s\" should return \"%s\"(%d), got \"%s\"(%d), instead.", base, expected, expected.size(), got, got.size()));
	}
	valid = valid && (got == expected);
}
{
	String base = "r.";